0 Replies Latest reply on Jan 22, 2012 7:00 AM by oguzhant

    Understanding ViewState Id in Ajax Requests

    oguzhant

      Hi we are using,
      Richfaces 3.2.2 with my faces trinidad 1.2.x. under Chordiant framework which offers desktop like enviroment in a single page. Chordiant framework lets users to have multiple windows in a single page by creating ifames in a window shaped divs. The problem is when i open a new window and call a jsf page a viewstate is being created and in that window when i open up a new jsf page in a new window/iframe i can't do more than 15 request without returning the old window. When i do this i get a ViewState expired/can not find exception. I know the cause of the exception because in our web.xml we save states in client by token method which has a limit of 15. Actually this method sounds like a client side saving mechanism but it saves the view in a queue in server side.

       

      Now we can change the state saving to server or client>all instead of token or can increase token number but because of performance issues we don't want to do that. Now i have a few questions to you. I checked it many times that in a single page when i do an ajax request i see that ViewState Id value which is being hold in a hidden input field in page changes continously. Is it normal behavior? Is it possible to save new state of the page into existing id so that queue won't be filled anymore by the same page? Also is it possible for us to manage this state Id holding? For example i want to keep viewstates in user session as long as the iframe/window is being opened so that any other request in another page won't effect the other pages? And also i am able to make a request to server side when user closes the windows so that i can clean existing viewstates.

       

      I know this cases sounds weird and maybe it is not even related with RichFaces it self but any thought of you would be really helpful for me.

       

      Thanks a lot.