遇到一个困扰我两天的问题
服务器的tomcat上面挂了3个项目
1个项目在D:\tomcat\\webapps\ROOT下 运行正常
1个项目在D:\heyefan下 运行正常
1个项目在D:\MAPHAOROOT下 Filter失常
在本地开发的时候 Filter正常工作,
但是部署到服务器上面后,Filter就不起作用了。
状况是在本地和一台机器上面 访问页面都能正常的打印请求的资源 如js,css,image,html,.do
然后放到服务器上面的时候 就只能打印.do的请求 js,css,image,html都没打印了...
我发了一帖在csdn上
http://bbs.csdn.net/topics/390314835?page=1
开始以为是环境问题,于是重装jdk,tomcat,但是都无济于事。
又一步一步的调试,在日志打印过滤的所有文件,到官网重新下载strtus google 百度 总之各种办法想尽了。
最后把失常的项目挂到了ROOT目录下,擦 一下就正常了,于是感觉离解决问题不远了。
我把原本在ROOT下的项目放到了D盘,然后出现了新的问题,报
http://struts.apache.org/tags-bean cannot be resolved in either web.xml or the jar files deployed with this application
然后找到一个答案说因为tomcat的server.xml文件的HOST配置的问题:docBase不能为空
我的配置是
- <Host name="www.maphao.com" appBase="D:\scxcly"
- unpackWARs="true" autoDeploy="true">
- <Context path="" docBase="." debug="0" reloadable="true" />
- </Host>
修改为
- <Host name="myhouse.com" appBase=""
- unpackWARs="true" autoDeploy="true">
- <Context path="" docBase="D:\test\myhouse.com" debug="0" reloadable="true" />
- </Host>
这样就好了
于是我想到Filter失效也可能是这个问题导致的,于是又把有问题的项目给搞到D盘 然后在tomcat的server.xml
如上配置就搞定了 而且appBase还不能填,填了也不行
这里的配置肯定也有其他的配法,这个参考api配置就好了。
反正我的问题就是这个参数的路径问题引起的,不管你信不信,我反正信了...
转自:http://blog.csdn.net/hexin373/article/details/8291962