Uploaded image for project: 'Wicket'
  1. Wicket
  2. WICKET-6765

WS broadcast of ClosedMessage rewrites touchedPages by its single page

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Minor
    • Resolution: Unresolved
    • 7.7.0, 8.7.0
    • None
    • None
    • Java 8, Tomcat 9.0.27 and Jetty 9.4.18, Firefox 75.0

    Description

      That causes a lost of instances of newly touched pages (within PageStoreManager). For quite specific scenario that could have visible impact.

      Conditions to be fulfilled to see effect:

      1. calling setResponsePage(new NewResponsePage(customParams)) within AjaxLink (Link works)
        • this instance of passed page is not used for rendering (customParams are lost) - page is overridden by AbstractWebSocketProcessor.onClose() - within PersistentRequestAdapter.storeTouchedPages()
      2. RenderStrategy.REDIRECT_TO_RENDER must be applied
        • otherwise it is rendered before AbstractWebSocketProcessor.onClose()
      3. VoidPageManagerProvider must be used - setPageManagerProvider(new VoidPageManagerProvider(this));
        • otherwise it is saved and loaded within PageManager not only in session

      I'm attaching test application with example of losing page instance (and passed arguments). Important lines marked NOT WORKING in java and html files.

       

      Attachments

        Issue Links

          Activity

            People

              mgrigorov Martin Tzvetanov Grigorov
              honzik Jan Cerny
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated: