title: JSF commandLink, POSTing and the back button
body: <p>I've recently started doing some JSF work - before that I've always used PHP or Python for web development.</p>
  
  <p>I was somewhat surprised to find that JSF uses HTTP POSTs to navigate when the h:commandLink tag is used.</p>
  
  <p>I have been using the commandLink as this is apparently the correct way to build JSF apps. Why does JSF use POST for navigation? What's wrong with GET? I can only assume that the Javascript that is automatically generated by JSF for the onclick events could exceed the maximum length for a GET request.</p>
  
  <p>I already have a number of pages that are navigated using h:commandLink. This works wells until I use the browser's back button. How should I go about handling the back button in JSF?</p>
  
  <p>I'm struggling to understand why JSF was build around the POST. It breaks bookmarking, back-paging and the ability to have your page indexed in search engines. </p>