2013-07-05 24 views
0

我從我的存根得到這真是奇怪的消息(它不經常,但有時會發生,但很少,一日2次):在stub存根中的空指針?

SEVERE: Servlet.service() for servlet [default] in context with path [/EWC] threw exception 
java.lang.NullPointerException 
at com.company.rewsapi.REWSStub.isUserValid(REWSStub.java:28915) 
at com.company.rews.webclient.beans.ClientBeanBase.isUserConnectedToREWS(ClientBeanBase.java:152) 

行28915是:

_messageContext.getTransportOut().getSender().cleanup(_messageContext); 

我永遠不會從存根中得到空指針。這怎麼會發生?

我需要做什麼來追蹤錯誤或重現錯誤,以便我可以調試?

回答

0

分開這
_messageContext.getTransportOut().getSender().cleanup(_messageContext);
線成

TransportOut to = _messageContext.getTransportOut(); 
Sender sender = to.getSender(); 
sender.cleanup(_messageContext); 

編譯和運行。在執行過程中,如果發生任何NullPointerException,您將清楚地得到什麼是null,然後確定爲什麼是null。

+0

嗯...我不能這樣做,因爲存根是自動生成的代碼? – Danijel

+0

好吧,試了一下,編輯存根。錯誤在第一行:'TransportOutDescription = = _messageContext.getTransportOut();'因此,'_messageContext'變爲'null'。任何想法爲什麼會發生? – Danijel

0

看起來像Apache的修復程序

} finally { 
    if (_messageContext.getTransportOut() != null) { 
     _messageContext.getTransportOut().getSender().cleanup(_messageContext); 
    } 
} 

固定在1.6.0或1.5.5流通過

https://issues.apache.org/jira/browse/AXIS2-3788

+0

哪個版本的Apache修復了這個問題? – Danijel