`

struts2配置文件路径

 
阅读更多

请求时报以下异常:

com.opensymphony.xwork2.inject.ContainerImpl$MissingDependencyException: No mapping found for dependency [type=com.opensymphony.xwork2.ObjectFactory, name='default'] in public void com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.setObjectFactory(com.opensymphony.xwork2.ObjectFactory). - Class: com.opensymphony.xwork2.inject.ContainerImpl File: ContainerImpl.java

 

原因是自定义了struts的配置文件路径,但是路径指向不正确。默认情况下struts2会在classpath下加载默认配置文件struts.xml和struts-default.xml(在struts2-core.jar下)和struts-plugin.xml(在相关struts2插件jar包中)【可选】。

 

如果通过config参数指定配置文件路径,那么这几个默认配置文件路径都要显式指定一下:

 

<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-default.xml,struts-plugin.xml,struts/struts.xml</param-value>
		</init-param>
	</filter>

 注意前面不需要"/"。

 

另外一个需要注意的地方就是,使用include指令包含文件时:

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>

	<constant name="struts.devMode" value="true" />
	<constant name="struts.action.extension" value="action" />
	<constant name="struts.objectFactory" value="spring" />

	<include file="struts/struts-config.xml" />

</struts>

 是相对于classpath根目录的路径,而不是相对于文件的路径。比如说上面的配置,struts.xml在classpath的struts目录下,struts-config.xml也在同一目录下,但是include中file的路径要写成struts/struts-config.xml,而不是struts-config.xml。

分享到:
评论

相关推荐

    Struts2属性文件详解

    该属性指定加载Struts 2配置文件的配置文件管理器.该属性的默认值是org.apache.Struts2.config.DefaultConfiguration, 这是Struts 2默认的配置文件管理器.如果需要实现自己的配置管理器,开发者则可以实现一个实现...

    struts2实现多文件上传下载

    2.能够对上传路径进行配置文件指定(upload.properties),使用了一些类似单例模式的静态代码块 3.Struts2进行下载处理,能对上传的所有文件进行下载(多个) 4.文件保存的名称UUID生成,不过显示并下载的名称都是原...

    Struts课堂笔记.rar--struts2的struts.properties配置文件详解

    velocity配置文件路径 struts.velocity.contexts List of Velocity context names velocity的context列表 struts.velocity.manager.classname org.apache.struts2.views.velocity.VelocityManager ...

    Struts2全解Struts2全解

    3、struts2配置文件 4、cion主要内容 Namespace、自定义Action、路径问题、通配符、包含模块配置文件、默认Action、接受用户输入、服务器跳转、Action中访问web元素、简单数据校验、调用Action的自定义方法 5...

    struts2配置2.5版

    5.struts配置文件改动后,是否重新加载 &lt;constant name="struts.configuration.xml.reload" value="true" /&gt; 6.查看源码:Build path 后的类库中,奶瓶图标找到struts-core-2.5.16.jar 右键--&gt;properties--&...

    eclipse下利用struts2实现文件的上传和下载

    可以单文件或多文件上传和下载,如需要改变上传路径例如上传到本地磁盘(D:\)下只需稍加修改即可,再次非常感谢大虾李顺利。

    Struts2VulsTools-Struts2系列漏洞检查工具

    该工具的打开路径为:\Struts2VulsTools-2.3.20190927\Test\bin\Release\Text.exe 2019-09-25: 优化部分EXP在部分情况下被WAF拦截的问题,提高检测成功率,优化自定义上传路径exp,文件所在目录不存在时自动创建...

    uploadify3与struts2结合实现有进度条文件上传实例

    这是根据uploadify3 2结合struts2搭建的文件上传环境 可以直接导入eclipse运行 每步实现基本都加了注释 以下是我碰到的问题: 1 判断session是否失效 本实例没测试这个问题 但在工作项目中碰到了 但原因在这里...

    ajax_struts2_上传与下载_无刷新

    4. 批量导入数据采用的是导入test文件夹下的测试压缩包upload.rar上传到服务器的临时目录,然后利用WinRar.exe对其进行解压,解压后对指定文件名的Excel文件进行解析,然后对每条记录所配置的文件路径进行比对然后...

    Struts2教程

    在本系列教程中 Web 工程的上下文路径都是 struts2 ,如果在 Web 根目录有一个 index.jsp 文件,则访问路径如下: http://localhost:8080/struts2/index.jsp 由于 MyEclipse6 目前并不支持 Struts2 ,所以我们需要到...

    struts 2文件上传

    一个struts 2实现文件上传实例,上传文件类型、大小、路径都在 xml里面配置。

    struts2+spring2+ibates

    2、在sping配置中注意单元测试里,xml文件的路径问题,要用绝对路径。 3、struts.xml中命名空间和拦截器的使用。 4、sqlmapconfig.xml中传入参数和result的设置,只需要将得到的值result映射到有此属性的类对象. 5、...

    struts2 文件上传实例

    一个struts 2实现文件上传实例,上传文件类型、大小、路径都xml里面配置。

    Struts2 in action中文版

    第1章 Struts 2:现代Web框架 2 1.1 Web应用程序:快速学习 2 1.1.1 构建Web应用程序 2 1.1.2 基础技术简介 3 1.1.3 深入研究 6 1.2 Web应用程序框架 7 1.2.1 什么是框架 7 1.2.2 为什么使用框架 8 1.3 Struts 2框架...

    Struts2 学习笔记

    十三、 Struts2配置文件模块化包含(include) 17 十四、 默认的Action 18 十五、 Action总结 18 02 Struts2-Result 19 一、 Result类型 (type) 19 二、 全局结果集(Globle Result) 20 三、 动态的结果集(dynamic ...

    Struts2整合SiteMesh技巧

    概述 Struts 2.0提供一个Sitemesh插件... 缺省情况下,sitemesh假定装饰器文件保存在应用上下文根路径下的decorators目录下,如果采用如上配置,装饰器文件应该是ftl格式,如果需要使用其他格式,需要更改过滤器配置。

    Struts2\constant应用

    该属性指定Struts 2框架默认加载的配置文件,如果需要指定默认加载多个配置文件,则多个配置文件的文件名之间以英文逗号(,)隔开。 该属性的默认值为struts-default.xml,struts-plugin.xml,struts.xml,看到该属性...

    Struts2帮助```````

    十三、 Struts2配置文件模块化包含(include) 17 十四、 默认的Action 18 十五、 Action总结 18 02 Struts2-Result 19 一、 Result类型 (type) 19 二、 全局结果集(Globle Result) 20 三、 动态的结果集(dynamic ...

    struts1的文件上传

    文件上传、多文件上传,文件名 乱码,上传文件名的重名都在此工程中有具体的解决 此工程中为了上传容易,删除了jar包,要使的工程运行,只要加入struts-1.2.9的jar包就可以了

    Struts2注解使用说明文档

    而是改为使用Convention插件来支持零配置,和Codebehind相比,Convention插件更彻底,该插件完全抛弃配置信息,不仅不需要是使用struts.xml文件进行配置,甚至不需要使用Annotation进行配置,而是由struts2根据约定...

Global site tag (gtag.js) - Google Analytics