struts-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Łukasz Lenart <lukasz.len...@googlemail.com>
Subject Re: Problem With Struts 2.3.1 and Testing Struts Portlet
Date Wed, 28 Dec 2011 21:09:00 GMT
Could you register an issue ?

Looks like the problem is with PortletContext which it is not defined.
To solve your problem override the method as below in the
DefaultActionTest class:

    @Override
    protected ActionProxy getActionProxy(String uri) {
        ActionProxy actionProxy = super.getActionProxy(uri);
        ActionContext.getContext().put(StrutsStatics.STRUTS_PORTLET_CONTEXT,
new MockPortletContext());
        return actionProxy;
    }


Thanks in advance
-- 
Łukasz
+ 48 606 323 122 http://www.lenart.org.pl/
Warszawa JUG conference - Confitura http://confitura.pl/

2011/12/27 bphillips@ku.edu <bphillips@ku.edu>:
> I'm upgrading a Struts 2 portlet application from 2.2.3.1 to 2.3.1.  A test
> of my Action class that extends StrutsSpringTestCase that passed when using
> 2.2.3.1 now fails when using version 2.3.1.
>
> I've created a simple Struts 2 portlet example application to demonstrate
> the issue.  You can download the zipped example here:
>
>  http://www.brucephillips.name/struts/struts2helloworldportlet.zip
>
> Unzip the download.
>
> In a terminal window navigate to the project's root folder.
>
> run mvn clean test
>
> The test will pass.
>
> Open the pom.xml and change the struts.version property to 2.3.1 and save
> your change
>
> run mvn clean test
>
> The test will now fail.
>
> Here is part of the error message in the test report:
>
>
> Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 1.314 sec
> <<< FAILURE!
> testExecute(com.struts2.tutorial.action.DefaultActionTest)  Time elapsed:
> 1.252 sec  <<< ERROR!
> Error creating bean with name
> 'org.apache.struts2.portlet.result.PortletResult': Instantiation of bean
> failed; nested exception is
> org.springframework.beans.BeanInstantiationException: Could not instantiate
> bean class [org.apache.struts2.portlet.result.PortletResult]: Constructor
> threw exception; nested exception is java.lang.NullPointerException - action
> -
> file:/Users/bphillips/eclipse_workspaces/kucard/Struts2HelloWorldPortlet/target/classes/struts.xml:11:74
>        at
> com.opensymphony.xwork2.DefaultActionInvocation.createResult(DefaultActionInvocation.java:224)
>
> I get the same error if the project is using the Struts Spring plugin or
> not.
>
> I think the error is in the Struts unit testing framework as I can still run
> the project successfully.  For example after updating the struts.version in
> pom.xml enter this command in the terminal window:
>
> mvn jetty:run
>
> When you see the message [INFO] Started Jetty Server go to this URL in your
> web browser:  http://localhost:8080/struts2helloworldportlet/pluto/index.jsp
> and you should see the example portlet.
>
> Bruce
>
>
>
>
>
> --
> View this message in context: http://struts.1045723.n5.nabble.com/Problem-With-Struts-2-3-1-and-Testing-Struts-Portlet-tp5103393p5103393.html
> Sent from the Struts - User mailing list archive at Nabble.com.
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
>

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Mime
View raw message