创星网络[分享知识 传递快乐]

标题: struts2.1.X关于配置redirect-action启动出错的解决方法 [打印本页]

作者: luinstein    时间: 2012-12-12 22:09
标题: struts2.1.X关于配置redirect-action启动出错的解决方法
最近在学习Struts2,在配置struts-spring.xml的时候,我的配置文件struts-spring.xml如下:
  1. <action name="userlogin" class="UserLoginAction" method="userlogin">
  2.         <result name="success" type="redirect-action">
  3.                 <param name="actionName">login</param>
  4.                 <param name="namespace">/</param>
  5.         </result>
  6.         <result name="error">/login.jsp</result>
  7. </action>
复制代码
然后我启动TOMCAT,出现如下错误
  1. Unable to load configuration. - action - file:/E:/apache-tomcat-5.5.25/webapps/wftang/WEB-INF/classes/struts-spring.xml:46:23
  2.         at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:58)
  3.         at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:360)
  4.         at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:403)
  5.         at org.apache.struts2.dispatcher.FilterDispatcher.init(FilterDispatcher.java:190)
  6.         at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:221)
  7.         at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:302)
  8.         at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:78)
  9.         at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3635)
  10.         at org.apache.catalina.core.StandardContext.start(StandardContext.java:4222)
  11.         at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1014)
  12.         at org.apache.catalina.core.StandardHost.start(StandardHost.java:736)
  13.         at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1014)
  14.         at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
  15.         at org.apache.catalina.core.StandardService.start(StandardService.java:448)
  16.         at org.apache.catalina.core.StandardServer.start(StandardServer.java:700)
  17.         at org.apache.catalina.startup.Catalina.start(Catalina.java:552)
  18.         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  19.         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  20.         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  21.         at java.lang.reflect.Method.invoke(Method.java:585)
  22.         at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:295)
  23.         at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:433)
  24. Caused by: Error building results for action userlogin in namespace / - action - file:/E:/apache-tomcat-5.5.25/webapps/wftang/WEB-INF/classes/struts-spring.xml:46:23
  25.         at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.addAction(XmlConfigurationProvider.java:366)
  26.         at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.addPackage(XmlConfigurationProvider.java:460)
  27.         at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadPackages(XmlConfigurationProvider.java:265)
  28.         at org.apache.struts2.config.StrutsXmlConfigurationProvider.loadPackages(StrutsXmlConfigurationProvider.java:111)
  29.         at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContainer(DefaultConfiguration.java:189)
  30.         at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:55)
  31.         ... 21 more
  32. Caused by: There is no result type defined for type 'redirect-action' mapped with name 'success'.  Did you mean 'redirectAction'? - result - file:/E:/apache-tomcat-5.5.25/webapps/wftang/WEB-INF/classes/struts-spring.xml:50:53
  33.         at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.buildResults(XmlConfigurationProvider.java:613)
  34.         at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.addAction(XmlConfigurationProvider.java:364)
  35.         ... 26 more
复制代码
在网上搜索了一通,发现原来我前面的那个配置是支持struts2.0.X的配置,而我的struts的JAR的版本为struts2.1.6,在struts2.1.X中针对redirect-action的配置全面变了.配置如下:
  1. <action name="userlogin" class="UserLoginAction" method="userlogin">
  2.         <result name="success" type="redirectAction">
  3.                 <param name="actionName">login</param>
  4.                 <param name="namespace">/</param>
  5.         </result>
  6.         <result name="error">/login.jsp</result>
  7. </action>
复制代码
最后发现奇迹出现了,成功了!

from:http://go.cxweb.com.cn/ckyqy






欢迎光临 创星网络[分享知识 传递快乐] (http://bbs.cxweb.com.cn/) Powered by Discuz! X3