Apache Java Servlet-空指针异常&。罐子没装

Apache Java Servlet-空指针异常&。罐子没装,apache,tomcat,servlets,nullpointerexception,catalina,Apache,Tomcat,Servlets,Nullpointerexception,Catalina,所以我的情况有点奇怪,因为我看到的是一个服务器,它没有访问源代码的权限。到目前为止,关于servlet的一切都运行得很好,但是有一个突然的、自发的错误出现在其中一个javaservlet出现空指针异常时 以下是错误日志: INFO: Added header: Cache-Control: no transform 8-Apr-2014 10:57:16 AM org.apache.catalina.core.ApplicationContext log INFO: Added header:

所以我的情况有点奇怪,因为我看到的是一个服务器,它没有访问源代码的权限。到目前为止,关于servlet的一切都运行得很好,但是有一个突然的、自发的错误出现在其中一个javaservlet出现空指针异常时

以下是错误日志:

INFO: Added header: Cache-Control: no transform
8-Apr-2014 10:57:16 AM org.apache.catalina.core.ApplicationContext log
INFO: Added header: Cache-Control: no cache
8-Apr-2014 10:57:16 AM org.apache.catalina.core.ApplicationContext log
INFO: Attempted context: null
8-Apr-2014 10:57:16 AM org.apache.catalina.core.ApplicationContext log
INFO: Request URI: /public_stage//def.jsp
8-Apr-2014 10:57:16 AM org.apache.catalina.core.ApplicationContext log
INFO: Real path:  /opt/apps/tomjet/webapps/public_stage/def.jsp
8-Apr-2014 10:57:16 AM org.apache.catalina.core.ApplicationContext log
INFO: servlet context: null
8-Apr-2014 1:35:02 PM org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet PushServletMAG threw exception
java.lang.NullPointerException
        at com.openwave.wappush.Pusher.netSendRequest(Pusher.java:312)
        at com.openwave.wappush.Pusher.send(Pusher.java:230)
        at ca.test.servlet.ExtendedPush.pushServiceIndication(ExtendedPush.java:105)
        at ca.test.servlet.CDMAPushServlet.doPost(CDMAPushServlet.java:180)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
        at org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:419)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
        at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:199)
        at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:282)
        at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:767)
        at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:697)
        at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:889)
        at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
        at java.lang.Thread.run(Thread.java:619)
但是,在谈到catalina文件时,我注意到它指出,在一些位置,它正在尝试验证.jar文件,并且在WEB-INF/lib目录中没有加载servlet.jar文件

以下是具有特定位置的线的示例:

8-Apr-2014 2:02:00 PM org.apache.catalina.loader.WebappClassLoader validateJarFile
INFO: validateJarFile(/opt/apps/tomjet/webapps/wapMIG/WEB-INF/lib/servlet-api.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
总的来说,我对这个问题感到非常困惑,因为在用户与源代码的交互方面,根本没有,因为没有人可以访问它。这是如此突然和自发


有什么想法/资料可以帮助我解决这个问题吗?非常感谢。

错误是WEB-INF/文件夹中的jar servlet-api.jar,容器提供了servlet-api.jar,这导致部署中出现问题,您需要从lib文件夹中删除此jar。 您可能需要这个jar来编译您的项目,因此您必须配置项目以在IDE中使用这个jar,在eclipse中,您可以将它作为外部jar添加到Java构建路径中,但我建议您启用Web动态项目方面,并将tomcat配置为您的运行时环境。(项目->属性->项目面)