浏览 4365 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (10)
|
|
---|---|
作者 | 正文 |
发表时间:2010-07-09
websphere中web的路径找不到问题?tomcat正常,websphere中找不到路径 案例:
项目中一些文件路径为 WEB-INF |-- classes |-- xwork.xml |-- webwork-config |-- xwork-config-pay.xml |-- …… |-- xwork-config-XXX.xml xwork的配置: <include file="../webwork-config/xwork-config-pay.xml"/> 在tomcat中运行一切正常,不过在websphere中就不正常了,提示找不到文件:xwork-config-pay.xml
猜测原因: websphere中classes被单独的classloader加载后存在一个空间,与WebRoot的加载空间被隔离开来了 而在tomcat是由同一个loader加载的,所以相对路径未变,可以正确找到文件
解决方法一:
修改为如下结构 WEB-INF |-- classes |-- xwork.xml |-- webwork-config |-- xwork-config-pay.xml |-- …… |-- xwork-config-XXX.xml 中xwork中配置修改为: <include file="webwork-config/xwork-config-pay.xml"/> 经过测试一切OK!
解决方法二: 当然就是吧xwork.xml配置文件不放入classes中而是WEB-INF目录下就可以了
总结:对于classes和jar中的路径一个通用路径就是classpath:XXX,他们都是相对于classpath路径的,spring就提供了此机制,但是其他开源项目可能没有考虑全面单classes和jar中的资源被加载后可能相对于原来在WebRoot中的路径就发生了变化^ ^ 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2010-07-09
学习了。WAS挺好
|
|
返回顶楼 | |