You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by "Martin Grigorov (JIRA)" <ji...@apache.org> on 2014/08/12 10:52:13 UTC

[jira] [Resolved] (WICKET-5539) Allow preserving of the parsed PageParameters when re-creating an expired page

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

Martin Grigorov resolved WICKET-5539.
-------------------------------------

    Resolution: Fixed

'final' modifier is removed from all #mount() methods in WebApplication.
The application can now use the suggested workaround for Wicket 6.x.
The new method is marked as deprecated to indicate that it is not available in Wicket 7.x and to give a hint how to do it there.

If you have time to test the new APIs in Wicket 7.x I'll be really thankful for your feedback!

> Allow preserving of the parsed PageParameters when re-creating an expired page
> ------------------------------------------------------------------------------
>
>                 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
>            Assignee: Martin Grigorov
>              Labels: expiration, mountBookmarkablePage
>             Fix For: 6.17.0
>
>         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)