You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by "Mikko Pukki (Updated) (JIRA)" <ji...@apache.org> on 2012/01/30 16:32:10 UTC

[jira] [Updated] (WICKET-4371) Timer problems with Internet Explorer

     [ https://issues.apache.org/jira/browse/WICKET-4371?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Mikko Pukki updated WICKET-4371:
--------------------------------

    Description: 
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.

I'm wondering that why any request that is meant for previous versions of pages are processed?
In quickstart rendering is slowed down with Thread.sleep, but network latencies can and will create similar problems.



In the quickstart there is PageB -link. Pressing that invokes this behavior


There is also custom store in quickstart that provider simple debug logging. 

  was:
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?
In quickstart rendering is slowed down with Thread.sleep, but network latencies can and will create similar problems.



In the quickstart there is PageB -link. Pressing that invokes this behavior

    Environment: Jetty/Apache Tomcat & Internet Explorer  (was: Jetty/Apache Tomcat)
        Summary: Timer problems with Internet Explorer  (was: Timer problems with HttpSessionDataStore)
    
> Timer problems with Internet Explorer
> -------------------------------------
>
>                 Key: WICKET-4371
>                 URL: https://issues.apache.org/jira/browse/WICKET-4371
>             Project: Wicket
>          Issue Type: Bug
>          Components: wicket
>    Affects Versions: 1.5.3, 1.5.4
>         Environment: Jetty/Apache Tomcat & Internet Explorer
>            Reporter: Mikko Pukki
>         Attachments: TimerProblem.zip
>
>
> 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.
> I'm wondering that why any request that is meant for previous versions of pages are processed?
> In quickstart rendering is slowed down with Thread.sleep, but network latencies can and will create similar problems.
> In the quickstart there is PageB -link. Pressing that invokes this behavior
> There is also custom store in quickstart that provider simple debug logging. 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira