修正struts配置文件位置.doc

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
修正struts配置文件位置

struts2中改变struts.xml默认路径 struts2.X配置文件默认存放路径在/WEB-INF/classes目录下,即将struts.xml放在src的目录下。 但是为了方便管理,开发人员把struts.xml放到其他位置,处理方法如下。 首先要明白struts2加载配置文件都是从自己的jar包和/WEB-INF/classes两个默认的位置加载的。 若修改struts2.x配置文件的存放位置,在web.xml配置过虑器时,具体配置如下: ? 1 filter 2 ????filter-namestruts2/filter-name 3 ????filter-classorg.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter/filter-class 4 ????init-param? 5 ????????param-nameconfig/param-name? 6 ????????param-valuestruts-default.xml,struts-plugin.xml,struts/struts.xml/param-value 7 ????/init-param 8 /filter ? 注意点1 若设置了param-nameconfig/param-name参数,那struts-default.xml等原来struts2默认加载的文件也要手动指定,否则不会自动加载。 ? 注意点2 struts-plugin.xml也需要指定。因为在struts2使用2.1.6版本时: 若需要和spring集成的话,struts2-spring-plugin-2.1.6.jar中有struts-plugin.xml这个文件。 若struts2要支持json的话, json-plugin-0.34.jar中也有一个叫struts-plugin.xm的文件。 因此这个文件也是要加载的。 ? 注意点3 采用相对/WEB-INF/classes的相对路径。本例放在了/WEB-INF/classes/struts目录下。当然也可以写成classpath:struts/struts.xml ? 注意点4 若不在这里配置struts-default.xml,struts-plugin.xml,也可以在struts.xml文件中添加include标签将两个文件包括进去。 include file=struts-default.xml /和include file=struts-plugin.xml / ? 注意点5 使用include file=... /标签添加其他子配置文件时,file属性也要是一个相对/WEB-INF/classes的路径。 若子配置文件路径是/WEB-INF/classes/configs/struts/student/struts-config.xml的话, file属性值应该写configs/struts/student/struts-config.xml。 若有多个子配置文件可以采用扫描的方式include file=configs/struts/*/*.xml / 可能遇到的问题: 警告: Could not find action or result????? There is no Action mapped for namespace / and action name hello. - [unknown location] 为什么指定了自己的struts.xml文件路径依然访问不到呢? 原因依然在struts加载配置文件的方式,struts并不是获取的配置文件相对应用(项目)的路径,而是相对src,对于web是相对/WEB-INF/classes文件夹的路径,现在知道了最终的解决方案了? 对了,就是把web.xml中的[/WEB-INF/struts.xml]改成 [../struts.xml],即使用相对/WEB-INF/classes文件夹的路径!

文档评论(0)

ktj823 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档