org.apache.struts2.StrutsJUnit4TestCase.executeAction上的java.lang.NullPointerException(StrutsJUnit4TestCase.java:134)
我在应用程序中使用Struts2和Spring3,当我在应用程序中执行jUnit4测试时,出现以下错误:org.apache.struts2.StrutsJUnit4TestCase.executeAction上的java.lang.NullPointerException(StrutsJUnit4TestCase.java:134),java,struts2,nullpointerexception,junit4,spring-3,Java,Struts2,Nullpointerexception,Junit4,Spring 3,我在应用程序中使用Struts2和Spring3,当我在应用程序中执行jUnit4测试时,出现以下错误: null java.lang.NullPointerException at org.apache.struts2.StrutsJUnit4TestCase.executeAction(StrutsJUnit4TestCase.java:134) at com.junitaction.HelloWorldTest.testGetString2(HelloWorldTest.ja
null java.lang.NullPointerException
at org.apache.struts2.StrutsJUnit4TestCase.executeAction(StrutsJUnit4TestCase.java:134)
at com.junitaction.HelloWorldTest.testGetString2(HelloWorldTest.java:76)
at org.springframework.test.context.junit4.statements.RunBeforeTestMethodCallbacks.evaluate(RunBeforeTestMethodCallbacks.java:74)
at org.springframework.test.context.junit4.statements.RunAfterTestMethodCallbacks.evaluate(RunAfterTestMethodCallbacks.java:83)
at org.springframework.test.context.junit4.statements.SpringRepeat.evaluate(SpringRepeat.java:72)
at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:231)
at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:88)
at org.springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:61)
at org.springframework.test.context.junit4.statements.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:71)
at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:174)
调用executeAction
方法时出错。如何解决这个问题
我的jar文件:
antlr-2.7.2.jar、asm-3.3.jar、commons-fileupload-1.3.jar、,
commons-io-2.0.1.jar,commons-lang-2.4.jar,commons-lang3-3.1.jar,
commons-logging-1.1.3.jar,freemarker-2.3.19.jar,
javassist-3.11.0.GA.jar、ognl-3.0.6.jar、,
org.springframework.web.servlet-3.2.3.RELEASE.jar,
spring-aop-3.2.3.RELEASE.jar,spring-aspects-3.2.3.RELEASE.jar,
spring-beans-3.2.3.RELEASE.jar,spring-context-3.2.3.RELEASE.jar,
spring-context-support-3.2.3.RELEASE.jar,spring-core-3.2.3.RELEASE.jar,
spring-expression-3.2.3.RELEASE.jar,spring-test-3.2.3.RELEASE.jar,
spring-web-3.2.3.RELEASE.jar,struts2-core-2.3.15.1.jar,
struts2-junit-plugin-2.3.15.1.jar,struts2-spring-plugin-2.3.15.1.jar,
xwork-core-2.3.15.1.jar
struts.xml
:
/success.jsp
web.xml
上下文配置位置
/WEB-INF/applicationContext.xml
支柱2
org.apache.struts2.dispatcher.ng.filter.strutspreadexecutefilter
org.springframework.web.context.ContextLoaderListener
支柱2
/*
index.jsp
appapplicationcontext.xml
:
将struts2 junit插件添加到项目中,并从
StrutsSpringJUnit4TestCase
扩展您的测试
在struts.xml
中,您应该使用
<constant name="struts.objectFactory" value="spring" />
使spring能够管理您的操作。将struts2 junit插件添加到项目中,并从
StrutsSpringJUnit4TestCase
扩展您的测试
在struts.xml
中,您应该使用
<constant name="struts.objectFactory" value="spring" />
使spring能够管理您的操作。发布完整的stacktrace,还包括您使用的版本。还需要
javax.servlet jsp api
2.0或2.1,它包含在JavaEE6包javax.servlet.jsp.jar
中,不幸的是没有版本信息。因此,请使用maven。我已经放置了那个jar,但我只收到空指针异常。您应该将它放置在web inf/lib
中并重新部署。发布完整的堆栈跟踪,还包括您使用的版本。还需要javax.servlet jsp api
2.0或2.1,这包含在JavaEE6包javax.servlet.jsp.jar
,不幸的是没有版本信息。所以,使用maven。我已经放置了那个jar,但我只得到空指针异常。您应该将它放置在web inf/lib
中并重新部署。