Uploaded image for project: 'Beehive'
  1. Beehive
  2. BEEHIVE-898

Bogus Forward from a PageFlow Action method results in a java.lang.ClassNotFoundException

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Cannot Reproduce
    • v1m1
    • 1.0
    • NetUI
    • None
    • ALL

    Description

      Repro steps:

      1. Create a shared flow in your app that handles PageFlowException, for example:

      @Jpf.Controller(
      catches=

      { @Jpf.Catch(type=PageFlowException.class, method="handlePageFlowException") }

      )
      public class SharedFlow extends SharedFlowController
      {
      ...
      }

      2. In your Controller class, create the shared flow reference to the shared flow created in step 1.

      3. In the same Controller class in step 2, create an action method that returns an unresolveable Forward.

      After compiling and deploying the app, now hit the action create in step 3. Rather than getting a PageFlow error that indicates it could not resolve the Forward, it chokes on a java.lang.ClassNotFoundException for handlePageFlowException.

      A quick debugging point to ExceptionConfig ...

      at org.apache.struts.util.RequestUtils.applicationClass(RequestUtils.java:207)
      at org.apache.struts.util.RequestUtils.applicationInstance(RequestUtils.java:231)
      at org.apache.beehive.netui.pageflow.internal.DefaultExceptionsHandler.invokeExceptionHandlerClass(DefaultExceptionsHandler.java:339)
      at org.apache.beehive.netui.pageflow.internal.DefaultExceptionsHandler.handleException(DefaultExceptionsHandler.java:196)
      at org.apache.beehive.netui.pageflow.FlowController.handleException(FlowController.java:259)
      at org.apache.beehive.netui.pageflow.FlowController.internalExecute(FlowController.java:444)
      at org.apache.beehive.netui.pageflow.PageFlowController.internalExecute(PageFlowController.java:285)
      at org.apache.beehive.netui.pageflow.FlowController.execute(FlowController.java:307)
      at org.apache.beehive.netui.pageflow.internal.FlowControllerAction.execute(FlowControllerAction.java:48)
      at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)
      at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.access$201(PageFlowRequestProcessor.java:105)
      at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor$ActionRunner.execute(PageFlowRequestProcessor.java:2048)
      at org.apache.beehive.netui.pageflow.interceptor.action.internal.ActionInterceptors.wrapAction(ActionInterceptors.java:90)
      at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.processActionPerform(PageFlowRequestProcessor.java:2119)
      at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
      at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.processInternal(PageFlowRequestProcessor.java:600)
      at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.process(PageFlowRequestProcessor.java:886)
      at org.apache.beehive.netui.pageflow.AutoRegisterActionServlet.process(AutoRegisterActionServlet.java:613)
      at org.apache.beehive.netui.pageflow.PageFlowActionServlet.process(PageFlowActionServlet.java:163)
      at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:507)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:743)

      Attachments

        1. repro-success.zip
          1 kB
          Richard Feit

        Activity

          People

            alramire Alejandro Ramirez
            xibin Xibin Zeng
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: