Hi,
We are encountering problems on all pages that have timers for updating/polling
new data.
It seems that if new page is rendering, timer's request can mess things up.
Problem can be
reproduced with Wicket 1.5.3 and 1.5.4
An example situation:
1) Page (id1) has a timer and user presses link (Request1) that forwards to a
new Page (future id2).
2) Request is being processed at server and page with id2 is rendered
3) While still in render phase timer makes new request to a server
Timer's request is handled even if there is a new rendered page. Timer's
request is now last request
handled and page that contained timer is last page stored at PageTable. This
causes weird problems with
our applications.
Session store is created at application's init:
setPageManagerProvider(new
DefaultPageManagerProvider(this) {
@Override
protected IDataStore
newDataStore()
{
return new HttpSessionDataStore(new DefaultPageManagerContext(), new
PageNumberEvictionStrategy(12));
}
});
I'm wondering that why any request that is meant for previous versions of pages
are processed?
I created a Jira issue and attached quickstart to it:
https://issues.apache.org/jira/browse/WICKET-4371
In quickstart rendering is slowed down with Thread.sleep, but network latencies
can and will create similar problems.
Regards,
Mikko