You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by "Jan Cerny (JIRA)" <ji...@apache.org> on 2017/05/28 07:51:04 UTC

[jira] [Created] (WICKET-6380) AbstractWebSocketProcessor.onClose() rewrites possibly wider processed and stored touchedPages to only Page itself

Jan Cerny created WICKET-6380:
---------------------------------

             Summary: AbstractWebSocketProcessor.onClose() rewrites possibly wider processed and stored touchedPages to only Page itself
                 Key: WICKET-6380
                 URL: https://issues.apache.org/jira/browse/WICKET-6380
             Project: Wicket
          Issue Type: Bug
          Components: wicket-native-websocket
    Affects Versions: 7.7.0, 8.0.0
         Environment: Java 8, Tomcat 8.5.6, Firefox 53.0.2, Wicket 7.7.0 (most probably 8.0.0 affected as well by seeing just code)
            Reporter: Jan Cerny
            Assignee: Martin Grigorov


*scenario:*
* When setResponsePage(new NewResponsePage(customParams)) is called e.g. within AjaxLink.onClick() on a Page
* and default RenderStrategy.REDIRECT_TO_BUFFER is used
* PersistentRequestAdapter.storeTouchedPages() stores (Page and NewResponsePage) to pageStore and as setSessionAttribute()
* unfortunatelly AbstractWebSocketProcessor.onClose() touch and stores only a Page (on the same session attribute)

*problem:*
A new request on NewResponsePage always instantiate NewResponsePage (once we using custom NoOpPageStore implements IPageStore)

*solutions:*
# restrict ourselves to default constructor with PageParams
#* BUT when trigerring AjaxLink.onClick() on NewResponsePage newly instantiated (button) component within Border could not be found (because of queueToBorder feature)
# use 1 + RenderStrategy.REDIRECT_TO_RENDER
#* solves the previous BUT
#* less performing (and a lot of code changes we wanna avoid)
# use DefaultPageManagerProvider
#* less performing (we wanna avoid)
# swallow onClose broadcast 
#* a bit hard with wicket-native-websocket-javax package
#* *could there be some support for that?* 
# *some other easier solution - any idea?*



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)