方案一:
 
首先我们要明白struts2加载配置文件都是从它自己的jar包和\WEB-INF\classes两个默认的位置加载的,如果你想改变strusts2中的文件的默认加载路径,可以在web项目的web.xml配置过滤器的时候指定。

如(配置过虑器的部分代码):
   
<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-XML/struts.xml
</param- value>
     
</init-param
>
   
</filter>
我在这里是把struts.xml放在
WEB-INF\STRUTS-XML\struts.xml

  
上面加载struts.xml是使用的相对路径(相对于\WEB-INF\classes目录".."后退退到WEB-INF目录);

----------------------------------------------------------------------------------------------

如果把struts.xml放在
src\STRUTS-XML\struts.xml 中,这时既可以使用相对路径,又可以使用绝对路径 ,分别如下:
  绝对路径:<param-value>struts-default.xml,struts-plugin.xml,/STRUTS-XML/struts.xml
</param- value>
            
这时“/”就是相当于classes目录
  相对路径:<param-value>struts-default.xml,struts-plugin.xml,STRUTS-XML/struts.xml
</param- value>
         
(这时是相对于\WEB-INF\classes目录

####要注意的是,如果你设置了<param-name>config</param-name>参数,那么struts-default.xml等原来struts2默认加载的文件你也要指定,否则它好像不会自动加载,会出错

也可以加载到struts.xml中(<include
file="struts-default.xml"></include>)

(另外
struts-default.xml,struts-plugin.xml 是不用特殊指定的 struts.xml放到根目录下就可以
在struts.xml 里include 其他的struts.xml 而struts.xml
主要是进行一些配置的(比如字符类型等))
3.而且使用<include
file="../STRUTS-XML/user.xml"/>标签时也要系一个都要指定相对的路径和struts.xml指定一样

还有一种不用这样配置的方法就是使用<include
file="/STRUTS-XML/user.xml"/>
也就是struts.xml放在默认的位置,只是其它的配置放到其它的地方
如:

XML code
<struts> <constant name="struts.enable.DynamicMethodInvocation"
value="false" /> <constant name="struts.devMode" value="false" /> <include file="STRUTS-XML/user.xml"/></struts>

我就是把user.xml文件放到了\WEB-INF\classes\STRUTS-XML目录下
这样也可以达到统一管理配置文件,也不用配置<param-name>config</param-name>参数

方案二:
    和设置struts.properties的自定义路径相同:
   
博客地址:http://blog.sina.com.cn/s/blog_7ffb8dd50101402x.html

struts2设置加载非默认路径的struts.xml文件解决方案的更多相关文章

  1. Java日志组件logback使用:加载非类路径下的配置文件并设置定时更新

    Java日志组件logback使用:加载非类路径下的配置文件并设置定时更新 摘自: https://blog.csdn.net/johnson_moon/article/details/7887449 ...

  2. struts2设置非默认路径的struts.properties以及.properties文件解决方案

    一.web应用的classpath简介    classpath路径在每个J2ee项目中都会用到,即WEB-INF下面的classes目录,所有src目录下面的java.xml.properties等 ...

  3. Mysql加载配置默认路径

    查看命令 mysqld --verbose --help|grep "Default options" -n1 输出结果 11-12:Default options are rea ...

  4. struts2——配置struts.xml文件

    在struts2框架中struts.xml是应当放到src的根目录,程序编译后会将struts.xml放到WEB-INF/classes目录下. Struts2在web.xml中的一般配置如下: &l ...

  5. js设置加载进度提示

      CreateTime--2017年8月23日09:17:46Author:Marydon js设置加载进度提示 第一部分:CSS /*加载样式*/ .Loading { position: abs ...

  6. struts2配置文件加载顺序

    struts2配置文件加载顺序: struts-default.xml/ struts-plugin.xml/ struts.xml/ struts.properties/ web.xml

  7. 设置 Jupyter notebook 工作空间 / 默认路径

    常用的启动 Jupyter notebook 的两种方式是:命令行窗口启动和开始菜单启动.设置 Jupyter notebook 的默认路径也有两种常用方式: 修改配置文件 设置快捷方式. 1 通过修 ...

  8. Angular 使用 frame 加载网络资源显示路径不安全问题

    Angular 使用 frame 加载网络资源显示路径不安全问题 做项目的时候,angular 使用 frame 加载网络pdf文件的时候出现 unsafe value 问题,路径不安全.解决办法. ...

  9. Java 加载、编辑和保存WPS表格文件(.et/.ett)

    WPS表格文件是金山开发的专门用于处理表格数据的Office工具,属于WPS Office中WPS文字.WPS表格和WPS演示三大功能模块之一.通常以.et和.ett作为文件后缀.我们在通过后端来操作 ...

随机推荐

  1. 5)Linux程序设计入门--信号处理

    )Linux程序设计入门--信号处理 Linux下的信号事件 前言:这一章我们讨论一下Linux下的信号处理函数. Linux下的信号处理函数: 信号的产生 信号的处理 其它信号函数 一个实例 .信号 ...

  2. Android studio如何导出.so库(NDK开发入门)

    转自:http://blog.csdn.net/ssy_neo/article/details/51758687 项目中用到了硬件调试,google一下拿到了硬件调试的源码,可惜握草so库根本加载不进 ...

  3. DWG/DGN格式导入Arcgis;转化为shp格式;更改地理坐标;导入Google Earth【转】

      其实本来,我就是需要把一个autocad的dwg/dgn格式的东西导入到google earth里面:但是首先我对dwg/dgn格式的东西根本就不熟:其次我拿到的dwg/dgn格式文件是用的HK8 ...

  4. 下拉菜单select高度(兼容IE6/IE7/IE8/火狐等主流浏览器)

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  5. vmware 传输(vmdb)错误-32:pipe:read failed 解决方法

    摘自: http://www.myzhenai.com.cn/post/1088.html 传输(vmdb)错误-32:pipe:read failed 解决方法   原创内容,转载请注明出处:htt ...

  6. 2014Esri全球用户大会——亮点系列之产品技术

    2014年Esri全球用户大会已于7月14日~18日隆重召开,让我们一起来回味下面精彩内容: 序:大会主题"Creating Our Future" [解读]:     传达两个核 ...

  7. 【python】下载网络文件到本地

    # 下载网络图片文件到本地 import urllib.request rsp=urllib.request.urlopen("http://n.sinaimg.cn/ent/transfo ...

  8. 【python】如何安装requests

    在cmd窗口输入pip install requests 即可,如下 C:\Users\horn1\Desktop\python\4>pip install requestsCollecting ...

  9. JS生成EXCEL(Chrome浏览器)

    直接使用js+Html生成excel文件,当前版本:chrome浏览器 <!DOCTYPE html> <html> <head> <meta charset ...

  10. 如何打印加密的PDF文件?

    如何打印加密的PDF文件? Pdf加密了不让打印怎么办?? 下载Foxit PDF Editor以下是下载地址:http://www.orsoon.com/Soft/4865.html 用它打开加密的 ...