Time Jetty服务器可以';在jetty服务器运行一段时间后,不要为某些jsp加载一些类
我们有一个运行在独立jetty服务器上的应用程序,服务器版本是6.1.20。启动应用程序后,它可以正常运行一段时间。但是经过一段时间(不是确定的),一些jsp页面无法在应用程序中打开,除非重新启动jetty服务器 有人遇到过这个问题吗 例外情况是:Time Jetty服务器可以';在jetty服务器运行一段时间后,不要为某些jsp加载一些类,time,jetty,Time,Jetty,我们有一个运行在独立jetty服务器上的应用程序,服务器版本是6.1.20。启动应用程序后,它可以正常运行一段时间。但是经过一段时间(不是确定的),一些jsp页面无法在应用程序中打开,除非重新启动jetty服务器 有人遇到过这个问题吗 例外情况是: Nested in org.apache.jasper.JasperException: PWC6034: Unable to load class for JSP: java.lang.ClassNotFoundException:org.apac
Nested in org.apache.jasper.JasperException: PWC6034: Unable to load class for JSP:
java.lang.ClassNotFoundException:org.apache.jsp.XXX.XXX_jsp
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at org.apache.jasper.servlet.JasperLoader.findClass(JasperLoader.java:204)
at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:190)
at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:122)
at org.apache.jasper.JspCompilationContext.load(JspCompilationContext.java:639)
at org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:192)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:372)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:486)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:380)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:502)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390)
at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:327)
at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:126)
at org.springframework.web.servlet.view.InternalResourceView.renderMergedOutputModel(InternalResourceView.java:112)
at org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:249)
at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1063)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:827)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:736)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:396)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:350)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:502)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1162)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:78)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:77)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1153)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:264)
at org.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:107)
这类问题通常与清理临时目录相关,jetty在临时目录中解包了一个webapp一些tmp目录清理过程可能只删除某些在指定时间内未被访问的文件 我也有同样的问题,并发现在我的CentOS 5.9上,我正在从tmp目录中删除10天内未被访问的文件。这就是为什么一些jsp在工作,而一些没有
我通过从tmpwatch进程中排除Jetty tmp文件夹解决了这个问题。但仅适用于某些jsp页面,其类文件存在于/tmp/Jettyxxxxx中。如果这是由于某种清除临时目录的sweeping过程造成的,那么为什么除了一个jsp页面之外,其他jsp页面都可以打开呢。无法打开的页面不是特定的,它可能是任何jsp页面。