I have the following method that keeps failing and I don't know why. The method 
should really only set a NavigationBean into session, then forward to a page 
based on the action parameter.
================================================================

public void testProductSelection() throws Exception {
    // JUnitDoclet begin method productSelection

      NavigationBean navigationBean = null;

      java.lang.String[] productSelectionRequired = {
"requiredif.productSelectionRequired" };

      java.lang.String[] reqParamNames = { "action",
                                           "businessLineSelected",
                                           "businessCardSelected",
                                          
"businessSecuredCardSelected",
                                           "equipmentExpressSelected"
      };
      java.lang.String[] reqParamValue0     = { "nextPage", "true",
"false", "false", "false", Constants.BUSINESS_FWD };
      java.lang.String[] reqParamValue1     = { "nextPage", "false",
"true", "false", "false", Constants.BUSINESS_FWD };
      java.lang.String[] reqParamValue2     = { "nextPage", "false",
"false", "true", "false", Constants.BUSINESS_FWD };
      java.lang.String[] reqParamValue3     = { "nextPage", "false",
"false", "false", "true", Constants.BUSINESS_FWD };
      java.lang.String[] reqParamValue4     = { "nextPage", "true",
"true", "false", "false", Constants.BUSINESS_FWD };
      java.lang.String[] reqParamValue5     = { "nextPage", "true",
"false", "true", "false", Constants.BUSINESS_FWD };
      java.lang.String[] reqParamValue6     = { "nextPage", "true",
"false", "false", "true", Constants.BUSINESS_FWD };
      java.lang.String[] reqParamValue7     = { "nextPage", "false",
"true", "true", "false", Constants.BUSINESS_FWD };
      java.lang.String[] reqParamValue8     = { "nextPage", "false",
"true", "false", "true", Constants.BUSINESS_FWD };
      java.lang.String[] reqParamValue9     = { "nextPage", "false",
"false", "true", "true", Constants.BUSINESS_FWD };

      java.lang.String[] reqParamValue10     = { "business", "true",
"true", "true", "true", Constants.BUSINESS_FWD };
      java.lang.String[] reqParamValue11     = { "firstOwner",
"true", "true", "true", "true", Constants.FIRSTOWNER_FWD };
      java.lang.String[] reqParamValue12     = { "secondOwner",
"true", "true", "true", "true", Constants.SECONDOWNER_FWD };
      java.lang.String[] reqParamValue13     = { "businessLine",
"true", "true", "true", "true", "prepareBusinessLine" };
      java.lang.String[] reqParamValue14     = { "businessCard",
"true", "true", "true", "true", "prepareBusinessCard" };
      java.lang.String[] reqParamValue15     = { "securedCard",
"true", "true", "true", "true", "prepareSecuredCard" };
      java.lang.String[] reqParamValue16     = { "equipmentExpress",
"true", "true", "true", "true", "prepareEquipmentExpress" };
      java.lang.String[] reqParamValue17     = { "conclude", "true",
"true", "true", "true", Constants.BUSINESS_FWD };

      java.lang.Object[] reqParamValues = { reqParamValue0,
reqParamValue1, reqParamValue2, reqParamValue3,
                                            reqParamValue4,
reqParamValue5, reqParamValue6, reqParamValue7,
                                            reqParamValue8,
reqParamValue9, reqParamValue10, reqParamValue11,
                                            reqParamValue12,
reqParamValue13, reqParamValue14, reqParamValue15,
                                            reqParamValue16,
reqParamValue17
      };

//----- NO Products
---------------------------------------------------------//
        setRequestPathInfo("/productSelection");
        addRequestParameter("action", "nextPage");
        addRequestParameter("businessLineSelected", "false");
        addRequestParameter("businessCardSelected", "false");
        addRequestParameter("businessSecuredCardSelected", "false");
        addRequestParameter("equipmentExpressSelected", "false");
        actionPerform();

        verifyActionErrors( productSelectionRequired );

        verifyForward( Constants.ERROR_FWD );

//----- Various Products
----------------------------------------------------//
      setRequestPathInfo("/productSelection");

        for( int i=0; i<reqParamValues.length; i++ ){
            String[] reqParamValue = (String[])reqParamValues[i];
            log.info(
"//------------------------------------------------------------------------//"
);
            log.info( "reqParamValue " + i + " name is " +
reqParamValues[i].getClass().getName().toString() );
            log.info( "setRequestPathInfo( /productSelection )" );
            addRequestParameter( reqParamNames[0], reqParamValue[0] );
            addRequestParameter( reqParamNames[1], reqParamValue[1] );
            addRequestParameter( reqParamNames[2], reqParamValue[2] );
            addRequestParameter( reqParamNames[3], reqParamValue[3] );
            addRequestParameter( reqParamNames[4], reqParamValue[4] );
            log.info(
"----------------------------------------------------------------------------"
);
            log.info( "reqParamNames[0]: " +
reqParamNames[0].toString() );
            log.info( "reqParamNames[1]: " +
reqParamNames[1].toString() );
            log.info( "reqParamNames[2]: " +
reqParamNames[2].toString() );
            log.info( "reqParamNames[3]: " +
reqParamNames[3].toString() );
            log.info( "reqParamNames[4]: " +
reqParamNames[4].toString() );
            log.info(
"----------------------------------------------------------------------------"
);
            log.info( "reqParamValue[0]: " +
reqParamValue[0].toString() );
            log.info( "reqParamValue[1]: " +
reqParamValue[1].toString() );
            log.info( "reqParamValue[2]: " +
reqParamValue[2].toString() );
            log.info( "reqParamValue[3]: " +
reqParamValue[3].toString() );
            log.info( "reqParamValue[4]: " +
reqParamValue[4].toString() );
            log.info(
"----------------------------------------------------------------------------"
);
            try{
                actionPerform();
            } catch( Exception e ){
                log.error(e.getMessage() );
                e.printStackTrace();
            }

            verifyNoActionErrors();
            log.info( "actionForwards: " + reqParamValue[5].toString()
);
            log.info( "getActualForward: " + getActualForward() );
            verifyForward( reqParamValue[5] );

            navigationBean = (NavigationBean) getSession().getAttribute(
Constants.NAVIGATION_BEAN );
            assertTrue( "NavigationBean is null", navigationBean !=
null );
            log.info(
"//------------------------------------------------------------------------//"
);
        }

//----- END...
--------------------------------------------------------------//

    // JUnitDoclet end method productSelection
  }





I get this error on the 14th iteration:
=============================================



java.lang.IllegalStateException: response already committed
at 
weblogic.servlet.internal.ServletResponseImpl.sendRedirect(ServletResponseImpl.java:584)
at 
servletunit.struts.StrutsResponseWrapper.sendRedirect(StrutsResponseWrapper.java:154)
at 
org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:385)
at 
org.apache.struts.tiles.TilesRequestProcessor.processForwardConfig(TilesRequestProcessor.java:316)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:231)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:415)
at 
servletunit.struts.CactusStrutsTestCase.actionPerform(CactusStrutsTestCase.java:537)
at 
com.wf.bd.ice.creditapplication.CreditApplicationActionsTest.testProductSelection(CreditApplicationActionsTest.java:195)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at 
org.apache.cactus.internal.AbstractCactusTestCase.runBareServer(AbstractCactusTestCase.java:153)
at 
org.apache.cactus.internal.server.AbstractWebTestCaller.doTest(AbstractWebTestCaller.java:119)
at 
org.apache.cactus.internal.server.AbstractWebTestController.handleRequest_aroundBody0(AbstractWebTestController.java:93)
at 
org.apache.cactus.internal.server.AbstractWebTestController.handleRequest_aroundBody1$advice(AbstractWebTestController.java:124)
at 
org.apache.cactus.internal.server.AbstractWebTestController.handleRequest(AbstractWebTestController.java)
at 
org.apache.cactus.server.ServletTestRedirector.doPost_aroundBody2(ServletTestRedirector.java:101)
at 
org.apache.cactus.server.ServletTestRedirector.doPost_aroundBody3$advice(ServletTestRedirector.java:124)
at 
org.apache.cactus.server.ServletTestRedirector.doPost(ServletTestRedirector.java)
at 
org.apache.cactus.server.ServletTestRedirector.doGet_aroundBody0(ServletTestRedirector.java:72)
at 
org.apache.cactus.server.ServletTestRedirector.doGet_aroundBody1$advice(ServletTestRedirector.java:124)
at 
org.apache.cactus.server.ServletTestRedirector.doGet(ServletTestRedirector.java)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at 
weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:971)
at 
weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:402)
at 
weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:305)
at 
weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:6350)
at 
weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:317)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:118)
at 
weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3635)
at 
weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2585)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)



--------------------
Mick Knutson
Wells Fargo Business Direct Information Systems
(415) 222-1020

"This message may contain confidential and/or privileged information. If you 
are not the addressee or authorized to receive this for the addressee, you must 
not use, copy, disclose, or take any action based on this message or any 
information herein. If you have received this message in error, please advise 
the sender immediately by reply e-mail and delete this message. Thank you for 
your cooperation."
--------------------



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to