Beehive
  1. Beehive
  2. BEEHIVE-756

Major badness when moving between page flows in the same request, with multiple concurrent requests

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: V1Alpha, V1Beta, v1m1
    • Fix Version/s: 1.0
    • Component/s: NetUI
    • Labels:
      None

      Description

      There's actually a whole class of bugs like this; the repro below is only one example.

      Repro:

      • Add the attached page flows to a webapp, build, and hit /first/Controller.jpf.
      • Click the "goNested" twice quickly.

      You'll see the following stacktrace on the console:

      org.apache.beehive.netui.pageflow.EmptyNestingStackException: Empty nesting stack for returned action nestedDone from page flow /nested/Controller.jpf.
      at org.apache.beehive.netui.pageflow.internal.DefaultActionForwardHandler.doNestingReturn(DefaultActionForwardHandler.java:464)
      at org.apache.beehive.netui.pageflow.internal.DefaultActionForwardHandler.doForward(DefaultActionForwardHandler.java:167)
      at org.apache.beehive.netui.pageflow.FlowController.forwardTo(FlowController.java:491)
      at org.apache.beehive.netui.pageflow.PageFlowController.forwardTo(PageFlowController.java:896)
      at org.apache.beehive.netui.pageflow.FlowController.internalExecute(FlowController.java:428)
      at org.apache.beehive.netui.pageflow.PageFlowController.internalExecute(PageFlowController.java:282)
      at org.apache.beehive.netui.pageflow.FlowController.execute(FlowController.java:306)
      at org.apache.beehive.netui.pageflow.internal.FlowControllerAction.execute(FlowControllerAction.java:48)
      at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:421)
      at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.access$201(PageFlowRequestProcessor.java:109)
      at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor$ActionRunner.execute(PageFlowRequestProcessor.java:1979)
      at org.apache.beehive.netui.pageflow.interceptor.action.internal.ActionInterceptors$WrapActionInterceptorChain.continueChain(ActionInterceptors.java:63)
      at org.apache.beehive.netui.pageflow.interceptor.action.internal.ActionInterceptors.wrapAction(ActionInterceptors.java:86)
      at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.processActionPerform(PageFlowRequestProcessor.java:2048)
      at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:226)
      at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.processInternal(PageFlowRequestProcessor.java:592)
      at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.process(PageFlowRequestProcessor.java:856)
      at org.apache.beehive.netui.pageflow.AutoRegisterActionServlet.process(AutoRegisterActionServlet.java:600)
      at org.apache.beehive.netui.pageflow.PageFlowActionServlet.process(PageFlowActionServlet.java:163)
      at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:397)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:697)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
      at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:703)
      at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:463)
      at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:398)
      at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:312)
      at org.apache.beehive.netui.pageflow.internal.DefaultForwardRedirectHandler.forward(DefaultForwardRedirectHandler.java:127)
      at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.doForward(PageFlowRequestProcessor.java:1755)
      at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.processPageFlowRequest(PageFlowRequestProcessor.java:758)
      at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.processInternal(PageFlowRequestProcessor.java:517)
      at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.process(PageFlowRequestProcessor.java:856)
      at org.apache.beehive.netui.pageflow.AutoRegisterActionServlet.process(AutoRegisterActionServlet.java:600)
      at org.apache.beehive.netui.pageflow.PageFlowActionServlet.process(PageFlowActionServlet.java:163)
      at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:397)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:697)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
      at

      1. jira756.zip
        3 kB
        Rich Feit

        Issue Links

          Activity

          Julie Zhuo made changes -
          Status Resolved [ 5 ] Closed [ 6 ]
          Rich Feit made changes -
          Fix Version/s V1 [ 12310123 ]
          Fix Version/s TBD [ 10950 ]
          Alejandro Ramirez made changes -
          Assignee Alejandro Ramirez [ alramire ] Julie Zhuo [ jzhuo ]
          Rich Feit made changes -
          Status Open [ 1 ] Resolved [ 5 ]
          Resolution Fixed [ 1 ]
          Assignee Rich Feit [ rich ] Alejandro Ramirez [ alramire ]
          Rich Feit made changes -
          Link This issue is cloned as BEEHIVE-787 [ BEEHIVE-787 ]
          Rich Feit made changes -
          Fix Version/s TBD [ 10950 ]
          Fix Version/s V1 [ 10780 ]
          Rich Feit made changes -
          Attachment jira756.zip [ 20185 ]
          Rich Feit made changes -
          Field Original Value New Value
          Fix Version/s V1 [ 10780 ]
          Rich Feit created issue -

            People

            • Assignee:
              Julie Zhuo
              Reporter:
              Rich Feit
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development