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

FeedbackPanel does not work properly in clustered environment

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Won't Fix
    • 1.3.2
    • 1.3.5
    • None
    • None

    Description

      Environment: Tomcat 5.5.25, Java 6, non-sticky session clustering, redirect to render strategy.

      Consider the following scenario:

      • Two tomcat instances running a Wicket application in clustered mode
      • Application contains a page that has a form and a feedback panel
      • Web browser posts the form. The post is processed in cluster node A
      • Application in cluster node A validates the form and produces some feedback messages
      • Request ends, Wicket ->clears all component feedback messages from the session<- , replicates the session, and issues a redirect to render the page
      • Browser follows the redirect and hits the application in node B
      • Application in node B renders the page but, because there are no feedback messages on the session , the feedback panel is not made visible

      The solution I found (don't know if its the best one) is to change WebSession.java to clear component feedback messages only if the current request is not a redirect.
      This solution breaks one test case (WicketTesterTest) because it takes the broken behavior for granted.

      I will attach a patch to WebSession and to WicketTesterTest.

      Attachments

        1. WicketTesterTest.patch
          3 kB
          Juliano Viana
        2. WebSession.patch
          0.8 kB
          Juliano Viana

        Activity

          People

            Unassigned Unassigned
            jjviana Juliano Viana
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: