1.5.3. I've narrowed the problem to a ListView being present on the page. Whenever there's a ListView with setReuseItems set to false (the default) the Page ID gets incremented whenever the back button is used to return to the page. I confirmed this with a call to getPage().getPageId() in an onComponentTag method. After returning via the back button the URL is still at the original Page ID while there's a newer version in the page map.
Without a ListView present on the page using the back button does not increment the Page ID and everything works as expected. I have a quickstart app that illustrates the problem. Here is the page with the applicable code: http://pastebin.com/jn9czHK8 Mark On Friday, December 9, 2011 at 9:56 AM, Nazaret Kazarian wrote: > Which version of Wicket are you using? > > > 2011/12/7 Lichtenberg, Mark <mlichtenb...@machenergy.com > (mailto:mlichtenb...@machenergy.com)>: > > I have a page containing a number of AjaxLinks that when clicked fetch data > > and update some panels. When a user leaves one of these pages and returns > > via the back button the state of the page isn't always how they left it. > > However, this behavior happens only when the page is returned to the second > > time. Using the the request logger I've been able to partially explain this > > with the page IDs: > > > > > > 1. First visit to page X has a page ID of 3 > > 2. AjaxLink requests for this page also have a page ID of 3. > > 3. User leaves page then returns to page X via the back button; this > > request also has ID of 3 > > 4. User clicks AjaxLinks again, but here a new X page is created with an > > ID of 5 > > 5. User leaves page and again returns with the back button. Here the > > page state is as they left it in #2, and the URL confirms the page ID of 3 > > > > I understand using the back button will always take the user to ID 3 since > > it is present in the URL. > > > > My workaround so far is to add the Page component to the target of my > > AjaxLink onClick()s. This increments the page ID whenever an AjaxLink is > > clicked and is reflected in the URL, so the back button always returns to > > the last state. > > > > So I have two questions - Why is a new page X created in step 4 above, and > > why does adding the Page component to the ajax request target make a new > > page map entry? > > > > Thanks, > > > > Mark > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org > (mailto:users-unsubscr...@wicket.apache.org) > For additional commands, e-mail: users-h...@wicket.apache.org > (mailto:users-h...@wicket.apache.org) > >