spring+struts2整合,做了一个用户登陆的测试程序,附下配置文件片段
<bean id="loginAction" class="net.lizifeng.cdssw.action.LoginAction">.....</bean>
<package name="default" extends="struts-default">
<action name="login" class="loginAction">
<result name="input">/login.jsp</result>
<result name="success">/success.jsp</result>
</action>
</package>但提交表单后报的如下500错误Unable to instantiate Action, loginAction, defined for 'login' in namespace '/'loginAction
com.opensymphony.xwork2.DefaultActionInvocation.createAction(DefaultActionInvocation.java:306)
com.opensymphony.xwork2.DefaultActionInvocation.init(DefaultActionInvocation.java:387)
com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:186)
org.apache.struts2.impl.StrutsActionProxy.prepare(StrutsActionProxy.java:61)
org.apache.struts2.impl.StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:39)
com.opensymphony.xwork2.DefaultActionProxyFactory.createActionProxy(DefaultActionProxyFactory.java:47)
org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:458)
org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:76)
<bean id="loginAction" class="net.lizifeng.cdssw.action.LoginAction">.....</bean>
<package name="default" extends="struts-default">
<action name="login" class="loginAction">
<result name="input">/login.jsp</result>
<result name="success">/success.jsp</result>
</action>
</package>但提交表单后报的如下500错误Unable to instantiate Action, loginAction, defined for 'login' in namespace '/'loginAction
com.opensymphony.xwork2.DefaultActionInvocation.createAction(DefaultActionInvocation.java:306)
com.opensymphony.xwork2.DefaultActionInvocation.init(DefaultActionInvocation.java:387)
com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:186)
org.apache.struts2.impl.StrutsActionProxy.prepare(StrutsActionProxy.java:61)
org.apache.struts2.impl.StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:39)
com.opensymphony.xwork2.DefaultActionProxyFactory.createActionProxy(DefaultActionProxyFactory.java:47)
org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:458)
org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:76)
<bean id="loginAction" class="net.lizifeng.cdssw.action.LoginAction">..... </bean> 是applicationContext.xml里配的action
<package name="default" extends="struts-default"> 是struts.xml 里配的action
既然action的name叫login,
那你访问时应该是/login,而不是/loginAction
struts.objectFactory = spring
不就可以把struts交于spring管理了吗?
7楼所说的注入是怎么回事?
在spring配置文件里载入SqlMapConfig.xml的时候前面加没classpath(classpath:SqlMapConfig.xml)
奇怪的是在服务启动的进候没有任何提示,但运行的时候好像spring的配置全没生效。
害我一直以为是和struts2整合的时候出问题了。希望能给下次遇到相似问题的朋友一个提示分数不多,回贴的朋友把分均分了吧,多谢