WAS 7.0中的奇怪行为:java.lang.ClassNotFoundException:class java.lang.NullPointerException:null

时间:2013-10-27 11:08:25

标签: servlets nullpointerexception websphere-7

我正在使用WAS 7.0,我发现了这个错误:

[27/10/13 11:55:06:727 CET] 00000023 servlet       E com.ibm.ws.webcontainer.servlet.ServletWrapper run [Servlet Error]-[class java.lang.NullPointerException: null]: java.lang.ClassNotFoundException: class java.lang.NullPointerException: null
    at java.beans.Beans.instantiate(Beans.java:190)
    at java.beans.Beans.instantiate(Beans.java:75)
    at com.ibm.ws.webcontainer.servlet.ServletWrapper$1.run(ServletWrapper.java:1909)
    at com.ibm.ws.security.util.AccessController.doPrivileged(AccessController.java:118)
    at com.ibm.ws.webcontainer.servlet.ServletWrapper.loadServlet(ServletWrapper.java:1900)
    at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:730)
    at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:502)
    at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:179)
    at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3933)
    at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:276)
    at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:931)
    at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1583)
    at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:186)
    at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:452)
    at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest(HttpInboundLink.java:511)
    at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest(HttpInboundLink.java:305)
    at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready(HttpInboundLink.java:276)
    at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.sendToDiscriminators(NewConnectionInitialReadCallback.java:214)
    at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.complete(NewConnectionInitialReadCallback.java:113)
    at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165)
    at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
    at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
    at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138)
    at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204)
    at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775)
    at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:905)
    at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1604)

问题是它不会一直显示,而是只显示我最近创建的servlet(即旧的servlet正在运行,但是新的servlet会抛出此错误)。出于这个原因,我检查了所有内容都已正确编译和链接,并且我没有看到任何与工作servlet不同的内容。

非常感谢有关如何进一步调试此问题或如何解决此问题的任何提示。

提前致谢, 里奥

2 个答案:

答案 0 :(得分:0)

我发现了问题。尽管它看起来像是什么,它不是一个平台问题,我只是忘了初始化一个ArrayList而且地狱崩溃了。 Hooray用于这种有用的编译器'¬¬

答案 1 :(得分:0)

WebSphere Application Server中包含的Java 6版本丢失了Java bug 4256569的修复程序,这掩盖了失败的实际原因。如果这个问题对您很重要,我建议您与IBM合作开设PMR。我验证了此问题已在WebSphere Application Server 8及更高版本中包含的Java 7中得到解决。