spring注入的Action, struts2找不到,tomcat启动出错...鼓捣了好久了,解决不了,求助!!

qq_21342267 2014-11-25 12:31:04
信息: Choosing bean (struts) for (org.apache.struts2.views.util.UrlHelper)
2014-11-25 0:07:26 com.opensymphony.xwork2.util.logging.commons.CommonsLogger error
严重: Dispatcher initialization failed
Unable to load configuration. - action - file:/E:/workspace/ssiFormat/WebRoot/WEB-INF/classes/struts.xml:9:44
at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:69)
at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:390)
at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:437)
at org.apache.struts2.dispatcher.FilterDispatcher.init(FilterDispatcher.java:193)
at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:281)
at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:262)
at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:107)
at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4746)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5399)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:619)
Caused by: Action class [Login] not found - action - file:/E:/workspace/ssiFormat/WebRoot/WEB-INF/classes/struts.xml:9:44
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.verifyAction(XmlConfigurationProvider.java:434)
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.addAction(XmlConfigurationProvider.java:378)
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.addPackage(XmlConfigurationProvider.java:495)
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadPackages(XmlConfigurationProvider.java:286)
at org.apache.struts2.config.StrutsXmlConfigurationProvider.loadPackages(StrutsXmlConfigurationProvider.java:112)
at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContainer(DefaultConfiguration.java:234)
at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:66)
... 16 more
2014-11-25 0:07:26 org.apache.catalina.core.StandardContext filterStart
严重: Exception starting filter struts2
Unable to load configuration. - action - file:/E:/workspace/ssiFormat/WebRoot/WEB-INF/classes/struts.xml:9:44
at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:450)
at org.apache.struts2.dispatcher.FilterDispatcher.init(FilterDispatcher.java:193)
at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:281)
at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:262)
at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:107)
at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4746)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5399)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:619)
Caused by: Unable to load configuration. - action - file:/E:/workspace/ssiFormat/WebRoot/WEB-INF/classes/struts.xml:9:44
at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:69)
at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:390)
at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:437)
... 14 more
Caused by: Action class [Login] not found - action - file:/E:/workspace/ssiFormat/WebRoot/WEB-INF/classes/struts.xml:9:44
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.verifyAction(XmlConfigurationProvider.java:434)
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.addAction(XmlConfigurationProvider.java:378)
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.addPackage(XmlConfigurationProvider.java:495)
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadPackages(XmlConfigurationProvider.java:286)
at org.apache.struts2.config.StrutsXmlConfigurationProvider.loadPackages(StrutsXmlConfigurationProvider.java:112)
at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContainer(DefaultConfiguration.java:234)
at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:66)
... 16 more
2014-11-25 0:07:26 org.apache.catalina.core.StandardContext startInternal
严重: Error filterStart
2014-11-25 0:07:26 org.apache.catalina.core.StandardContext startInternal
严重: Context [/ssiFormat] startup failed due to previous errors
2014-11-25 0:07:26 org.apache.catalina.core.ApplicationContext log
信息: Closing Spring root WebApplicationContext
=========================================================
下面是工程结构 和 struts2 的配置
========================================================


======================================
下面是web.xml的配置
======================================


=======================================================
下面是spring的配置
=======================================================

...全文
198 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_21342267 2014-11-26
  • 打赏
  • 举报
回复
解决了,是少了个包。struts2-spring-plugin
qq_21342267 2014-11-25
  • 打赏
  • 举报
回复
如果把struts.xml的 <action name="login" class="Login" > 改为com.xyz.action.Login ,tomcat就不报错。应该是spring的问题。哪位大侠给看看。
qq_21342267 2014-11-25
  • 打赏
  • 举报
回复
引用 11 楼 lonelywyl 的回复:
你的Login类应该是具体的包名到类名
我是想用spring注入。
云儿朵朵美 2014-11-25
  • 打赏
  • 举报
回复
struts.xml的格式错误吧
gzqGyula 2014-11-25
  • 打赏
  • 举报
回复
楼上几种说法都不错,其实action配置还有更简便的方法 用 <context:component-scan base-package="com.xyz.action" /> 还不容易出错
Mr_sqw 2014-11-25
  • 打赏
  • 举报
回复
3楼ok, struts.xml加上<constant name="struts.objectFactory" value="spring" /> struts对象工厂与spring整合
meng020712 2014-11-25
  • 打赏
  • 举报
回复
你的那个filter-class 是错误的、 <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> 复制、就不会报此错误了、
meng020712 2014-11-25
  • 打赏
  • 举报
回复
你必须要在spring中配置 Login的bean、 c其class必须是完整包名称 、
猎魔人-不纯 2014-11-25
  • 打赏
  • 举报
回复
<constant name="struts.objectFactory" value="spring" />
咔啪咔啪 2014-11-25
  • 打赏
  • 举报
回复
Action的class难道不是写完整的路径吗?这里本来就应该写com.xyz.action.Login,写Login当然找不到了
lonelywyl 2014-11-25
  • 打赏
  • 举报
回复
你的Login类应该是具体的包名到类名
qq_21342267 2014-11-25
  • 打赏
  • 举报
回复
引用 7 楼 GZQ0821 的回复:
楼上几种说法都不错,其实action配置还有更简便的方法 用 <context:component-scan base-package="com.xyz.action" /> 还不容易出错
你说的是注解吗? 我还没学到。新手..哈。
qq_21342267 2014-11-25
  • 打赏
  • 举报
回复
引用 3 楼 wobuxiangnila 的回复:
<constant name="struts.objectFactory" value="spring" />
加班中,回家我试试。

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧