运行JSP时出现异常

时间:2012-06-28 05:10:57

标签: java jsp jsp-tags

我在tomcat5.5服务器上运行任何JSP时遇到此异常。我需要添加任何JAR吗?请帮助。

StackTrace:

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)

3 个答案:

答案 0 :(得分:1)

检查tomcat-coyote.jar文件夹中是否有$CATALINA_BASE/shared/lib/。如果以某种方式存在它在启动服务器时没有被加载到类路径。检查你在conf / catalina.properties

中有这一行
server.loader=${catalina.home}/server/classes,${catalina.home}/server/lib/*.jar

如果是,则可能需要更新。你正在使用什么环境。

答案 1 :(得分:0)

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

答案 2 :(得分:0)

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