前段时间一直在学习struts1.x,今天试着配置了一下,struts2.x,用的版本是struts2.0.14,因为现在对于2.0和2.1的区别还不是很清楚,所以先用了比较低的版本试一下。
就写了一个login项目,启动tomcat时就出现了配置方面的错误。在这里总结一下
---------------解决如下-----------
看了错误信息,首先想到的是struts.xml的问题
第一次看了一下,并没有找到什么错误,然后就想着是不是namespace没有配置正确
然后又加了namespace的配置,
还是错误,之后试了好几次,一点一点的排查,终于发现自己犯了一个很低级的错误
Error building results for action login in namespace
仔细看了一下这个错误提示,应该是result标签的错误了,
一看,我竟然写成了这样
因为我在myeclipse里面是用的 xml editor编辑的,出现的不是这个画面所以当时没有注意,改成如下:
启动就正常了
希望能对初学者有所帮助
关于我的那个项目的工程文件在附件中
就写了一个login项目,启动tomcat时就出现了配置方面的错误。在这里总结一下
警告: Settings: Could not parse struts.locale setting, substituting default VM locale
2009-8-15 13:41:10 org.apache.catalina.core.StandardContext filterStart
严重: Exception starting filter struts2
Error building results for action login in namespace - action - file:/C:/Tomcat%206.0/webapps/struts2/WEB-INF/classes/struts.xml:7:58
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.addAction(XmlConfigurationProvider.java:340)
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.addPackage(XmlConfigurationProvider.java:429)
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadPackages(XmlConfigurationProvider.java:239)
at org.apache.struts2.config.StrutsXmlConfigurationProvider.loadPackages(StrutsXmlConfigurationProvider.java:111)
at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reload(DefaultConfiguration.java:152)
at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:52)
at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:395)
at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:452)
at org.apache.struts2.dispatcher.FilterDispatcher.init(FilterDispatcher.java:205)
at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:275)
at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:397)
at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:108)
at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3709)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4363)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:926)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:889)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1149)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
at org.apache.catalina.core.StandardService.start(StandardService.java:516)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
at org.apache.catalina.startup.Catalina.start(Catalina.java:578)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
Caused by: There is no result type defined for type '/result.jsp' mapped with name 'success' - result - file:/C:/Tomcat%206.0/webapps/struts2/WEB-INF/classes/struts.xml:8:48
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.buildResults(XmlConfigurationProvider.java:584)
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.addAction(XmlConfigurationProvider.java:338)
... 35 more
2009-8-15 13:41:10 org.apache.catalina.core.StandardContext start
严重: Error filterStart
2009-8-15 13:41:10 org.apache.catalina.core.StandardContext start
严重: Context [/struts2] startup failed due to previous errors
2009-8-15 13:41:10 org.apache.coyote.http11.Http11Protocol start
信息: Starting Coyote HTTP/1.1 on http-8080
2009-8-15 13:41:10 org.apache.jk.common.ChannelSocket init
信息: JK: ajp13 listening on /0.0.0.0:8009
2009-8-15 13:41:10 org.apache.jk.server.JkMain start
信息: Jk running ID=0 time=0/47 config=null
2009-8-15 13:41:10 org.apache.catalina.startup.Catalina start
信息: Server startup in 5747 ms
---------------解决如下-----------
看了错误信息,首先想到的是struts.xml的问题
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="struts2" extends="struts-default" >
<action name="login"
class="com.mp.struts.LoginAction"
>
<result name="success"
type = "/result.jsp"
></result>
</action>
</package></struts>
第一次看了一下,并没有找到什么错误,然后就想着是不是namespace没有配置正确
然后又加了namespace的配置,
还是错误,之后试了好几次,一点一点的排查,终于发现自己犯了一个很低级的错误
Error building results for action login in namespace
仔细看了一下这个错误提示,应该是result标签的错误了,
<result name="success"
type = "/result.jsp"
></result>
一看,我竟然写成了这样
因为我在myeclipse里面是用的 xml editor编辑的,出现的不是这个画面所以当时没有注意,改成如下:
<result name="success" >
/result.jsp
</result>
启动就正常了
希望能对初学者有所帮助
关于我的那个项目的工程文件在附件中
本文记录了一次使用Struts2.0.14版本搭建登录项目的过程,详细解析了配置过程中遇到的问题及解决方法,特别是针对struts.xml配置文件中的错误进行定位与修正。
544

被折叠的 条评论
为什么被折叠?



