这种情况很多,本文记录我遇到比较奇葩的情况。
第一种情况:
第一次tomact启动成功,访问404,乱捣鼓不知怎么好了;第二次tomcat启动成功,可以访问部分链接,有些却报404,但是代码和数据都还是以前的,没有变。很奇怪!
经常同事指点,查清原因:
请求tomcat里的jsp,tomcat会自动在work目录下生产相关jsp文件,web访问的是work里的,而不是webapps里的。之所以出现我这种情况,是因为tomcat一开始是用一般用户启动的,请求了几个页面后再用root启动,再请求几个页面后又变成一般用户启动tomcat.此时tomcat只有一般用户的权限,无法访问work里的root文件。因此出现这种情况。
解决方式:清空 work/Catalina里的文件。就可以了
第二种情况:
代码是copy同事的,同事可以请求,我的请求却404。之后发现,方法竟然是private的,改为public即可。but!!!至今不明白的,即使改为public的了,请求并不是立即生效。而是过了几个小时还是多久,才可以。至今尝试了清理tomcat缓存,eclipse项目缓存,重启软件,重启电脑,都不行!!!百思不得其姐~
这里附带大神写的work目录作用的传送门 http://bbs.51cto.com/thread-1104050-1.html