`

struts2 --web.xml-- Dispatcher initialization failed

阅读更多
信息: Parsing configuration file [struts.xml]
2011-9-17 17:39:59 com.opensymphony.xwork2.util.logging.commons.CommonsLogger error
严重: Dispatcher initialization failed
com.opensymphony.xwork2.inject.DependencyException: com.opensymphony.xwork2.inject.ContainerImpl$Mis
singDependencyException: No mapping found for dependency [type=com.opensymphony.xwork2.ObjectFactory
, name='default'] in public void com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.s
etObjectFactory(com.opensymphony.xwork2.ObjectFactory).
	at com.opensymphony.xwork2.inject.ContainerImpl.addInjectorsForMembers(ContainerImpl.java:144)
	at com.opensymphony.xwork2.inject.ContainerImpl.addInjectorsForMethods(ContainerImpl.java:113)
	at com.opensymphony.xwork2.inject.ContainerImpl.addInjectors(ContainerImpl.java:90)
	at com.opensymphony.xwork2.inject.ContainerImpl.addInjectors(ContainerImpl.java:86)
	at com.opensymphony.xwork2.inject.ContainerImpl$1.create(ContainerImpl.java:71)
	at com.opensymphony.xwork2.inject.ContainerImpl$1.create(ContainerImpl.java:67)
	at com.opensymphony.xwork2.inject.util.ReferenceCache$CallableCreate.call(ReferenceCache.java:150)
	at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
	at java.util.concurrent.FutureTask.run(Unknown Source)
	at com.opensymphony.xwork2.inject.util.ReferenceCache.internalCreate(ReferenceCache.java:76)
	at com.opensymphony.xwork2.inject.util.ReferenceCache.get(ReferenceCache.java:116)
	at com.opensymphony.xwork2.inject.ContainerImpl.inject(ContainerImpl.java:483)
	at com.opensymphony.xwork2.inject.ContainerImpl$6.call(ContainerImpl.java:523)
	at com.opensymphony.xwork2.inject.ContainerImpl$6.call(ContainerImpl.java:521)
	at com.opensymphony.xwork2.inject.ContainerImpl.callInContext(ContainerImpl.java:574)
	at com.opensymphony.xwork2.inject.ContainerImpl.inject(ContainerImpl.java:521)
	at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContainer(DefaultConfiguration.ja
va:203)
	at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:6
6)
	at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:380)
	at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:424)
	at org.apache.struts2.dispatcher.ng.InitOperations.initDispatcher(InitOperations.java:69)
	at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.init(StrutsPrepareAndExecu
teFilter.java:51)
	at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:273)
	at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:254)
	at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:372)
	at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:98)
	at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4542)
	at org.apache.catalina.core.StandardContext$2.call(StandardContext.java:5220)
	at org.apache.catalina.core.StandardContext$2.call(StandardContext.java:5215)
	at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
	at java.util.concurrent.FutureTask.run(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
Caused by: com.opensymphony.xwork2.inject.ContainerImpl$MissingDependencyException: No mapping found
 for dependency [type=com.opensymphony.xwork2.ObjectFactory, name='default'] in public void com.open
symphony.xwork2.config.providers.XmlConfigurationProvider.setObjectFactory(com.opensymphony.xwork2.O
bjectFactory).

 今天,在整struts2.2的项目时,启动时,出现以上错误。

查看web.xml文件,发现s2的配置如下:

                <filter>
		<filter-name>struts2</filter-name>
		<filter-class>
			org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
		 <init-param>
			<param-name>config</param-name>
			<param-value>struts.xml</param-value>
		</init-param> 
	</filter>

 研究了下,发现是param-name的应用文件时出现错,这样应用文件时,找不到strugs.xml文件。

于是乎,

 

解决办法一:

                              <init-param>
			<param-name>config</param-name>
			<param-value>classpath:struts.xml</param-value>
		</init-param>

 这段code注释掉,(注:struts.xml文件本身就在项目的源文件的根目录下)

再次启动项目:运行通过!

 

解决办法二:

 将init-param代码块改为如下代码:

                                <init-param>
			<param-name>config</param-name>
			<param-value>struts-default.xml,struts-plugin.xml,struts.xml</param-value>
		</init-param>

 再次启动项目:运行通过!

 

法二的原因:

struts-default.xml,struts-plugin.xml 系统默认必需加上,后面写自己的struts.xml

位置 是从 WEB-INF 的 classes 开始计算


struts.xml 的路径为 WEB-INF/class/struts.xml

struts-default.xml文件位置 不用动 , 不需要 放在WEB-INF/class/中

 

 

分享到:
评论

相关推荐

    struts2版本 2.1.6 必须的jar包 和 web.xml 文件的修改

    在本文中,我们将深入探讨Struts2版本2.1.6中的核心jar包以及如何调整`web.xml`配置文件以实现正确部署。 首先,Struts2的核心jar包是框架运行的基础,它们提供了Action映射、拦截器、结果类型和其他关键功能。对于...

    struts2-core-2.1.6.jar

    Struts2是一个基于MVC(Model-View-Controller)设计模式的Java Web应用程序框架,它简化了开发过程,提供了强大的表单验证、国际化、动态方法调用等功能。 1. **MVC设计模式**:MVC模式是软件工程中常用的设计模式...

    struts2-core-2.0.11源码

    Struts2是一个非常著名的Java Web开发框架,它基于MVC(Model-View-Controller)设计模式,极大地简化了Java Web应用程序的开发。Struts2核心包`struts2-core-2.0.11`包含了框架的核心组件和功能,使得开发者能够...

    struts2-core-lib.rar

    Struts2是一个非常著名的开源MVC(Model-View-Controller)框架,用于构建基于Java的Web应用程序。这个压缩包“struts2-core-lib.rar”包含了Struts2框架的核心库文件,是开发和运行Struts2应用的基础。让我们深入...

    plexus-sec-dispatcher-1.3.jar

    plexus-sec-dispatcher-1.3.jar

    commons-dbcp-1.2.1.jar commons-pool-1.3.jar struts-legacy.jar

    - Struts 1.x的主要组件包括ActionForm、Action、Dispatcher(现在称为Servlet Filter)、配置文件(struts-config.xml)等。它的MVC模式帮助分离业务逻辑和视图层,简化了Web应用的开发。 这三者组合在一起,可能...

    struts2上传文件需要的jar包 commons-fileupload-1.2.1.jar和commons-io-1.3.2.jar

    2. **添加过滤器**:在web.xml中配置`FilterDispatcher`(对于较旧的Struts2版本)或`StrutsPrepareAndExecuteFilter`(对于新版本),并设置`struts.multipart.parser`属性为`jakarta`,以启用Jakarta Commons ...

    解决struts2下载异常的jar包 struts2-sunspoter-stream-1.0.jar

    有关struts2下载组件的具体介绍我就在此略过了,看此文的同志想必大多是碰到这样让人很是不爽的问题。 下面就将该问题的最终解决办法介绍...-- 添加如下内容 --&gt; &lt;result-types&gt; &lt;result-type name="streamx" class=...

    struts2-api-2.0.5.jar.zip

    Struts2是一个非常著名的Java Web开发框架,它基于MVC(Model-View-Controller)设计模式,用于构建高效、可扩展且易于维护的企业级应用程序。Struts2-api-2.0.5.jar是该框架的一个特定版本的API库,包含了Struts2的...

    speech-dispatcher-0.7.1-15.el7.x86_64.rpm

    离线安装包,亲测可用

    struts-2.5.12-src.zip

    Struts 2是Java Web开发中的一个开源框架,主要用于构建MVC(Model-View-Controller)架构的应用程序。它的核心是Action,一个处理用户请求并返回结果的组件。Struts 2提供了强大的拦截器机制,可以对请求进行预处理...

    jackson-all-1.9.0.jar,jackson-all-1.9.9.jar,jackson-all-1.9.11.jar

    在Spring的配置文件中(如`dispatcher-servlet.xml`),添加以下配置: ```xml &lt;bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter"&gt; &lt;bean class="org.spring...

    Struts-2.5.14.1 项目最小需求jar包

    为了设置Struts2环境,开发者需要在web.xml中配置Struts2的前端控制器Filter,比如`&lt;filter-class&gt;org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter&lt;/filter-class&gt;`。然后,创建Action类、...

    struts-2.0.14-src.zip

    2. **org/apache/struts2**:Struts2的代码库,包含了与Struts2特定功能相关的类和接口,如Dispatcher、ActionContext、Tiles插件等。 3. **src/test**:测试代码,可以帮助我们了解如何测试Struts2的功能和组件。 4...

    Struts2-Spring-Hibernate的整合.doc

    Struts2、Spring和Hibernate是Java Web开发中的三大框架,它们各自负责应用程序的不同层面:Struts2处理MVC模式中的视图和控制器,Spring提供依赖注入(DI)和面向切面编程(AOP),而Hibernate则负责对象关系映射...

    struts2.1.6+spring2.0+hibernate3.2常用配置包

    最近温习ssh2整合编程,顺便浏览下struts2有什么更新的消息,下载了新版本的struts2的2.1.8.1版,使用的是MyEclipse8.0开发,但是问题就随之而来了。MyEclipse8.0中自带的struts2版本是2.1.6,spring版本有2.0,2.5...

    struts-2.3.24-all.zip

    Struts 2的配置文件主要包括`struts.xml`,它是整个应用程序的配置中心,定义了Action、拦截器、结果类型等。此外,还可以使用package元素来组织配置,实现模块化管理。 6. **表达式语言(Expression Language, EL...

    javassist-3.11.0.GA.jar

    stuts2项目启动tomcat报错:Error configuring application listener of class org.apache.struts2.dispatcher.ng.listener.StrutsListener,缺少的是这个javassist-3.11.0.GA.jar

    struts2-2.2.1-src.zip

    Struts2是一个强大的Java web应用程序框架,用于构建和部署企业级的MVC(Model-View-Controller)应用。它的核心是Action和Result,提供了一种组织业务逻辑和表现层的结构化方式。2.2.1是Struts2的一个版本,它在前...

    struts2-help-document.rar_Help!_struts2 document

    2. **配置文件**:Struts2使用XML配置文件(struts.xml)来定义Action类、结果视图和拦截器链。配置文件中可以定义Action的命名空间、方法映射、结果类型等,这为应用提供了高度的灵活性。 3. **拦截器**:Struts2...

Global site tag (gtag.js) - Google Analytics