[ https://issues.apache.org/jira/browse/WICKET-6055?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Sven Meier reopened WICKET-6055: -------------------------------- Assignee: Sven Meier (was: Martijn Dashorst) Must handle initially invisible AjaxLazyLoadPanel too. > AjaxLazyLoadPanel should provide non-blocking lazy load > ------------------------------------------------------- > > Key: WICKET-6055 > URL: https://issues.apache.org/jira/browse/WICKET-6055 > Project: Wicket > Issue Type: Improvement > Components: wicket-extensions > Affects Versions: 7.1.0 > Reporter: Martijn Dashorst > Assignee: Sven Meier > Priority: Major > Fix For: 8.0.0 > > > When having multiple AjaxLazyLoadPanels on your page, they all block their > Wicket request thread until the content is ready to load. This can be > problematic when you try to wait for some background job to finish and want > to poll for that job to be ready, and only then update the contents. > The improvement would be to add a method that gives the developer the option > to not update just yet (isReadyForReplacement) and when it returns true, > start the replacement. By default this would return true, implementing the > current behavior of the AjaxLazyLoadPanel. > Furthermore to improve the responsiveness of the ALLP it should add a single > timer to the page that can be used by multiple ALLPs to update themselves. > The timer would poll each second and the ALLPs would use Wicket's event bus > to update themselves. With some reference counting, the timer can remove > itself from the page when all ALLPs have updated themselves. > This enables refreshing the page as well when outside an AJAX context, or > having a user be impatient and pressing F5. -- This message was sent by Atlassian JIRA (v7.6.3#76005)