Since I have reported the issue and investigated a lot in that place at
Wicket as well as Jetty side: Changing the session on each request can
have very negative impact on performance depending on the underlying
technology.
Even though you should never run into this issue when using the
"traditional" PageStore Manager at all since the page store manager
always setting it store to the session already after each request.
So can you explain if you have any custom settings/mnagers in your
wicket app? Can you elaborate what Jetty version is used? In recent
Wicket 6 and Jetty 9 the problem should not occur anymore.
Beside this, that the problem occurs directly after page refresh seems
strange since this normally fixes such issues. You will see this kind of
problem e.g. after server restart or if you stay a little on the page
(so session data is reloaded), have heavy load so pages are evicted from
caches etc...
Am 15.05.2015 15:16, schrieb Christopher Merrill:
Wow, that makes sense - and I _think_ it explains the symptoms I've seen
with other problems as well. I'll have to re-investigate those.
The issue you mentioned is marked as resolved in 6.12 and the related
issue (WICKET-5473) was fixed in 6.14. We are running 6.19. So I must be
reading those descriptions wrong...or this problem is somehow different.
Anyway, I'll test your suggestion (or perhaps override
WebSession.equals()?).
Chris
On Fri, May 15, 2015 at 3:50 AM, Martin Grigorov<[email protected]>
wrote:
Hi,
AppEngine uses Jetty and I remembered about
https://issues.apache.org/jira/browse/WICKET-5390.
Here the reporter explains that Jetty won't update its SessionStore if it
believes the http session didn't change.
Wicket stores both o.a.w.Session and all pages rendered in the last request
as attributes in the http session.
If Jetty doesn't detect the change(s) in the http session it will not store
it and later will serve a http session with obsolete data inside.
By doing "getSession().setAttribute("blah", somethingRandom)" we try to
help Jetty realize that there is a change and make sure it saves the latest
state.
You can move this helper code in IRequestCycleListener#onEndRequest() so it
is executed for every request.
If I am correct then this should workaround the problem.
Martin Grigorov
Wicket Training and Consulting
https://twitter.com/mtgrigorov
On Fri, May 15, 2015 at 12:00 AM, Christopher Merrill<
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]