title: Persisting a DataTable state through views in Primefaces
body: <p>First of all: not native english speaker here, so sorry if I may sound a little confusing sometimes.</p>
  
  <p>I'm looking for a way to persist a DataTable (that shows a query result list) state when I navigate through different views in my application (so it's not an Ajax call), in other words: I need to render a new page with a DataTable exactly as it was in the previous view. First thing you should know about this is that I have a way to transport objects through my views using <code>ELFlash.getFlash().put(param, obj)</code>, so my problem is not recovering objects.</p>
  
  <p>I was able to make the DataTable open with all the previous result list with no problems... BUT it has a paginator and I was supposed to get to the second view not only with the query results but also opened in the same page that it was before.</p>
  
  <p>I already tried to keep the current page number in an object and put a code to change the paginator to that page in the post construct, but it didn't work:</p>
  
  <pre><code>DataTable dataTable = (DataTable) FacesContext.getCurrentInstance().getViewRoot().findComponent(":form:dataTable");
  String javaScript = "PF('widgetVarName').getPaginator().setPage(" + this.pageNumber + ")";
  RequestContext.getCurrentInstance().execute(javaScript);
  </code></pre>
  
  <p>The saddest thing here is that It didn't work in post construct and the DataTable doesn't open in the right page, but if I call this code in another button, after the page is already rendered, it works.</p>
  
  <p>Do you guys have any ideia?</p>