You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by "Ilia Naryzhny (JIRA)" <ji...@apache.org> on 2014/04/01 16:22:20 UTC

[jira] [Updated] (WICKET-5539) Incorrect recreation of page in case of PageExpire

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

Ilia Naryzhny updated WICKET-5539:
----------------------------------

    Attachment: wicket5539.zip

Please find quick start is in attachment.

TestCase:
1) Run mvn clean package jetty:run
2) Goto "home page"
3) Try to find "some entity": just enter some not empty query and click submit.
4) Try several time click to "ajax link".
5) Wait for >1 min
6) Try to click "ajax link" one more time

Expected results: page rerendered, entityId is the same, but count reseted to 0, because page was recreated due to http timeout.

Actual results: page lost "entityId" and rendered without corresponding "entity" 

> Incorrect recreation of page in case of PageExpire
> --------------------------------------------------
>
>                 Key: WICKET-5539
>                 URL: https://issues.apache.org/jira/browse/WICKET-5539
>             Project: Wicket
>          Issue Type: Bug
>          Components: wicket
>    Affects Versions: 6.14.0
>            Reporter: Ilia Naryzhny
>              Labels: expiration, mountBookmarkablePage
>         Attachments: wicket5539.zip
>
>
> There is a bookmarkable page mounted, for example, to:
> /page/${entityId}
> This page contains StatelessForm.
> Submitting of form after session expire lead to following:
> org.apache.wicket.core.request.mapper.MountedMapper invokes AbstractBookmarkableMapper.processListener to obtain IRequestHandler to handle submitting of form. 
> But there is cleaning of PageParameters within processListener on line 256 (Wicket 6.14) which cleaning "entityId" parameter as well and created page finally has no "enityId" and (in our case) redirects to 404.
> I see that this cleaning of page parameters was implemented due to Wicket-4594. But I think, just checking for pageId is unsufficient, because pageId might be not null, but actual page may be already expired and new instance should be created.



--
This message was sent by Atlassian JIRA
(v6.2#6252)