tomcat 下虚拟机部署导致应用filter失效的问题

遇到一个困扰我两天的问题

服务器的tomcat上面挂了3个项目

1个项目在D: omcat\webappsROOT下  运行正常

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不能为空

我的配置是

[html] view plaincopy
 
  1. <Host name="www.maphao.com"  appBase="D:scxcly"  
  2.             unpackWARs="true" autoDeploy="true">  
  3.           <Context path="" docBase="." debug="0" reloadable="true" />  
  4.     </Host>  

修改为

[html] view plaincopy
 
  1. <Host name="myhouse.com"  appBase=""  
  2.             unpackWARs="true" autoDeploy="true">  
  3.           <Context path="" docBase="D: estmyhouse.com" debug="0" reloadable="true" />  
  4.     </Host>  

这样就好了

于是我想到Filter失效也可能是这个问题导致的,于是又把有问题的项目给搞到D盘 然后在tomcat的server.xml

如上配置就搞定了 而且appBase还不能填,填了也不行

这里的配置肯定也有其他的配法,这个参考api配置就好了。

反正我的问题就是这个参数的路径问题引起的,不管你信不信,我反正信了...

转自:http://blog.csdn.net/hexin373/article/details/8291962

原文地址:https://www.cnblogs.com/hanxianlong/p/4046211.html