javax.servlet.ServletException: java.lang.NoClassDefFoundError: org / apache / tomcat / InstanceManager - PullRequest
3 голосов
/ 11 октября 2011

Я столкнулся с проблемами в понимании проблемы, возникающей при трассировке исключений, когда я получаю доступ к своему веб-приложению через Tomcat 6.0.33. Ниже приведены подробные сведения об исключении. FYI. одно и то же приложение работает с разными версиями Tomcat, но я не могу получить доступ к своему приложению через Tomcat 6.0.33. Это происходит, когда я захожу даже на мою домашнюю страницу приложения FYI.

Трассировка исключений:

org.apache.catalina.authenticator.FormAuthenticator forwardToLoginPage
WARNING: Unexpected error forwarding to login page
javax.servlet.ServletException: java.lang.NoClassDefFoundError: org/apache/tomcat/InstanceManager
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:268)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)
    at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
    at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
    at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
    at org.apache.catalina.authenticator.FormAuthenticator.forwardToLoginPage(FormAuthenticator.java:322)
    at org.apache.catalina.authenticator.FormAuthenticator.authenticate(FormAuthenticator.java:246)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:528)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:589)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:111)
    at org.apache.catalina.ha.tcp.ReplicationValve.invoke(ReplicationValve.java:347)
    at org.apache.catalina.ha.session.JvmRouteBinderValve.invoke(JvmRouteBinderValve.java:228)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:291)
    at org.apache.coyote.ajp.AjpAprProcessor.process(AjpAprProcessor.java:444)
    at org.apache.coyote.ajp.AjpAprProtocol$AjpConnectionHandler.process(AjpAprProtocol.java:399)
    at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1675)
    at java.lang.Thread.run(Thread.java:662)
Caused by: java.lang.NoClassDefFoundError: org/apache/tomcat/InstanceManager
    at java.lang.Class.getDeclaredFields0(Native Method)
    at java.lang.Class.privateGetDeclaredFields(Class.java:2291)
    at java.lang.Class.getDeclaredFields(Class.java:1743)
    at org.apache.catalina.util.DefaultAnnotationProcessor.processAnnotations(DefaultAnnotationProcessor.java:181)
    at org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:153)
    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:340)
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)
    at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
    at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
    at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
    at org.apache.catalina.authenticator.FormAuthenticator.forwardToLoginPage(FormAuthenticator.java:322)
    at org.apache.catalina.authenticator.FormAuthenticator.authenticate(FormAuthenticator.java:245)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:528)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:589)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at org.apache.catalina.ha.tcp.ReplicationValve.invoke(ReplicationValve.java:347)
    at org.apache.catalina.ha.session.JvmRouteBinderValve.invoke(JvmRouteBinderValve.java:227)

Спасибо за любую помощь в направлении решения проблемы.

Привет !!

Jai

Ответы [ 2 ]

9 голосов
/ 29 октября 2012

Похоже, вы кэшировали некоторые классы java из других версий tomcat в рабочем каталоге вашего Tomcat. Чтобы решить вашу проблему

  1. Останови кота
  2. Удалить $CATALINA_BASE/work/*
  3. Удалите распакованный каталог вашего веб-приложения в $CATALINA_BASE/webapps (этот шаг может не потребоваться)
  4. Начни свой кот.
2 голосов
/ 22 мая 2013

Похоже, что ваши JSP были (предварительно) скомпилированы для Tomcat 7. Их нельзя развернуть на Tomcat 6.

...