Bertrand Guay-Paquet created WICKET-5309:
--------------------------------------------
Summary: No page id appended to some stateful pages using repeaters
Key: WICKET-5309
URL: https://issues.apache.org/jira/browse/WICKET-5309
Project: Wicket
Issue Type: Bug
Affects Versions: 6.9.1
Reporter: Bertrand Guay-Paquet
My test case is a page containing a ListView with a single stateful child. In
that case, there is no redirect done to append a pageId to the url because the
page's statefulness check is erroneous.
Analysis:
This calls page.isPageStateless() to dertermine whether a pageId should be added
BookmarkableMapper(AbstractBookmarkableMapper).getPageInfo(IPageRequestHandler)
line: 440
BookmarkableMapper(AbstractBookmarkableMapper).mapHandler(IRequestHandler)
line: 387
SystemMapper(CompoundRequestMapper).mapHandler(IRequestHandler) line: 215
RequestCycle.mapUrlFor(IRequestHandler) line: 429
WebPageRenderer.respond(RequestCycle) line: 268
RenderPageRequestHandler.respond(IRequestCycle) line: 165
RequestCycle$HandlerExecutor.respond(IRequestHandler) line: 861
RequestCycle$HandlerExecutor(RequestHandlerStack).execute(IRequestHandler)
line: 64
RequestCycle.execute(IRequestHandler) line: 261
The problem I see is that AbstractRepeater's onPopulate() is called during
onBeforeRender() and this is not done when the stateless status of the page is
first checked. Therefore, no pageId is added unless other components not
located inside repeaters are also stateful.
See thread http://wicket-users.markmail.org/thread/6q2dmns7lqjgkok7
I will add a quickstart.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira