2012-06-28 117 views
0

我在tomcat5.5服务器上运行任何JSP时出现此异常。是否需要添加任何JAR?请帮忙。运行JSP时出现异常

堆栈跟踪:

DEBUG http-8181-Processor25 org.apache.catalina.loader.WebappClassLoader - Loading class from parent 
FATAL http-8181-Processor25 org.apache.jasper.runtime.JspFactoryImpl - Exception initializing page context 

java.lang.NoSuchMethodError: org.apache.tomcat.util.http.ServerCookie.appendCookieValue(Ljava/lang/StringBuffer;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;IZZ)V 
    at org.apache.catalina.connector.Response.addCookieInternal(Response.java:970) 
    at org.apache.catalina.connector.Request.doGetSession(Request.java:2285) 
    at org.apache.catalina.connector.Request.getSession(Request.java:2031) 
    at org.apache.catalina.connector.RequestFacade.getSession(RequestFacade.java:832) 
    at org.apache.catalina.connector.RequestFacade.getSession(RequestFacade.java:843) 
    at org.apache.jasper.runtime.PageContextImpl._initialize(PageContextImpl.java:136) 
    at org.apache.jasper.runtime.PageContextImpl.initialize(PageContextImpl.java:113) 
    at org.apache.jasper.runtime.JspFactoryImpl.internalGetPageContext(JspFactoryImpl.java:105) 
    at org.apache.jasper.runtime.JspFactoryImpl.getPageContext(JspFactoryImpl.java:62) 
    at org.apache.jsp.banner_jsp._jspService(banner_jsp.java:33) 
    at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:729) 
    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:331) 
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329) 
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:729) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) 
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) 
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172) 
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) 
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117) 
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108) 
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174) 
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:875) 
    at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665) 
    at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528) 
    at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81) 
    at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689) 
    at java.lang.Thread.run(Thread.java:619) 
DEBUG http-8181-Processor25 org.apache.catalina.loader.WebappClassLoader - loadClass(javax.servlet.jsp.PageContext, false) 

回答

1

检查,如果你有tomcat-coyote.jar$CATALINA_BASE/shared/lib/文件夹中。如果以某种方式存在,则在启动服务器时未将其加载到类路径中。检查你的conf这行/ catalina.properties

server.loader=${catalina.home}/server/classes,${catalina.home}/server/lib/*.jar 

如果是的话那么可能是你需要更新。你正在使用什么环境。

+0

LOGS:DEBUG main org.apache.jasper.compiler.JspRuntimeContext - 编译classpath初始化:/D:/Soft/apache-tomcat-5.5.27/server/lib/tomcat-coyote.jar(我可以看到tomcat- coyote.jar在与其他罐子的类路径) – VJS

+0

然后更新罐子 –

+0

Okes ...让我检查...在Windows上使用tomcat5.5.27 ...我使用非常基本的JSP.Does这意味着我们不能运行JSP上的tomcat 5.5.27 – VJS

0

我认为这个问题更多的是你正在使用的jar版本,或者你是在你的类路径中的jar。它试图指向正确的类版本,因为所需的方法不可用。哪些所有罐子已经在你的类路径中设置?

0

你不错过任何罐子。否则,你会得到ClassNotFound exceptionNoSuchMethodError表示罐子不兼容。你是否有机会改变(或从不同位置复制)/ lib中的jar文件,特别是jasper*.jar, tomcat-coyote