Tomcat 7在更新后继续使用旧的jsp

时间:2012-01-13 10:22:22

标签: java jsp tomcat

我们(我公司的人员)已经为Tomcat创建了一个应用程序,它在不久前使用servlet和jsp作为GUI。

我们刚刚完成了一个更新,其中一个jsp被大量改变。但是当我们在一台计算机上替换war文件时,它会继续使用旧的jsp(其中所有跟踪都从所述计算机中删除),而它在其他任何地方都能正常工作。

即使重新启动计算机,问题仍然存在。

有没有人见过这样的行为?可以做些什么呢?

6 个答案:

答案 0 :(得分:5)

这可能是因为缓存。首先确认项目是否正确清理。如果页面包含旧代码,则检查页面的html;如果旧代码存在,则检查最新的代码,然后浏览器获取旧文件,因此尝试清除浏览器的缓存然后尝试执行。

如何清除缓存firefox chrome

答案 1 :(得分:3)

删除所有痕迹是否也意味着"清洁"在服务器上?你可能知道它在" work"中保留了一些类(尤其是编译的jsps)。夹

答案 2 :(得分:1)

问题很可能是由时间戳不匹配引起的。新上载的JSP页面或servlet的时间戳大于服务器上缓存的页面或servlet的时间戳。要避免此问题,请确保上载JSP或servlet的计算机上的系统时钟与运行服务器的计算机的系统时钟同步。要解决此问题,请检查以下内容:

•确保文件传输客户端(如winscp已知导致问题)日期,时间和时区与Apache Tomcat服务器同步。 •使用Apache Tomcat服务器验证JSP日期,时间和时区是否是最新的。如果没有,请使用正确的时间戳重新部署JSP。 •如果更新JSP时间戳失败,那么如果您没有要保留的重要会话,那么您要做的最后一件事是删除Apache Tomcat工作目录中的JSP。

答案 3 :(得分:0)

  • 停止服务器。
  • 删除webapps / APP_NAME文件夹
  • 将webapps / APP_NAME.war替换为新的。
  • 启动服务器。

这应该有帮助:)

答案 4 :(得分:0)

我有同样的问题,但它不是tomcat 我的Apache设置为允许浏览器缓存text / html和text / plain类型1个月。 该页面的调用是根据JavaScript进行的,即使您使用Ctrl + F5重新加载页面,这些JavaScript调用仍会从browsercache加载。

清除浏览器缓存后,我得到了正确的页面 从现在开始,我不再为apache中的那些类型启用浏览器缓存。

答案 5 :(得分:-1)

  

即使重新启动计算机,问题仍然存在。

如果您删除了JSP,则问题在工作目录树中编译JSP。从轨道上起飞和核弹: - )