Hi,
On Fri, Jun 14, 2013 at 5:59 PM, Charlie Mason <[email protected]>wrote: > Hi All, > > I have used Wicket to develop a web app and I am having some difficulties > understanding exactly what's happening. > > Basically there is a search page which have a number of search fields. When > you click the search button the same page reloads with the results in a big > table underneath the original search fields. Because of this all of the > search fields retain there existing values when the results are displayed. > You can then edit any field and click search again. This all works as > expected. > > Some of the results have an icon which when clicked pops up an ajax > dialogue. This is straight forward 3rd party ajax dialogue (not part of > wicket). This simply displays another wicket page with a couple of links to > more wicket pages. If you click any of these links (which open in a new > tab) I get some odd behaviour on the original search form. No mater what > you enter into a search field, if you now click search it resets the entire > page. All of the fields are now cleared and the search doesn't occur. > > I can see via the debugger its just creating a new instance of my main > search page. I am guessing somehow opening that extra link invalidates the > session data. My guess is because the the URLs a numbered "page?2" these > are getting out of sync. > Yes. It looks like this is the reason. For some reason the 'renderCount' field of the initial page (the one with the filters) is increased when you open the Ajax Dialog or the new tab. Put a breakpoint at org.apache.wicket.Page#renderPage() and see why the filter page is re-rendered when you do any of these two interactions. > > Does any body have any suggestions on how to prevent this? > > Thanks, > > Charlie M >
