2013-12-10 66 views
2

我試圖使用JGroups多播包含多個ResultSets的Serializable對象。對象出現if語句之後被接收正常,因爲這:SEVERE:JGRP000019:傳遞給接收方的消息失敗:%s

while(rs.next()) { 

if(msg.getObject() instanceof State) 

然而,當我試圖在這個對象的ResultSet運行的操作,我在這條線得到一個空指針異常

這裏是堆棧跟蹤:

Dec 10, 2013 3:08:41 PM org.jgroups.logging.JDKLogImpl error 
SEVERE: JGRP000019: failed passing message to receiver: %s 
java.lang.NullPointerException 
    at AuctionImpl.receiveState(AuctionImpl.java:413) 
    at AuctionImpl.receivePrivateMessage(AuctionImpl.java:335) 
    at AuctionImpl.access$100(AuctionImpl.java:9) 
    at AuctionImpl$1.receive(AuctionImpl.java:49) 
    at org.jgroups.JChannel.up(JChannel.java:738) 
    at org.jgroups.stack.ProtocolStack.up(ProtocolStack.java:1019) 
    at org.jgroups.stack.Protocol.up(Protocol.java:409) 
    at org.jgroups.protocols.FRAG2.up(FRAG2.java:182) 
    at org.jgroups.protocols.FlowControl.up(FlowControl.java:434) 
    at org.jgroups.stack.Protocol.up(Protocol.java:409) 
    at org.jgroups.protocols.pbcast.STABLE.up(STABLE.java:294) 
    at org.jgroups.protocols.UNICAST3.removeAndDeliver(UNICAST3.java:791) 
    at org.jgroups.protocols.UNICAST3.handleDataReceived(UNICAST3.java:703) 
    at org.jgroups.protocols.UNICAST3.up(UNICAST3.java:381) 
    at org.jgroups.protocols.pbcast.NAKACK2.up(NAKACK2.java:600) 
    at org.jgroups.protocols.BARRIER.up(BARRIER.java:103) 
    at org.jgroups.protocols.VERIFY_SUSPECT.up(VERIFY_SUSPECT.java:147) 
    at org.jgroups.protocols.FD.up(FD.java:255) 
    at org.jgroups.protocols.FD_SOCK.up(FD_SOCK.java:301) 
    at org.jgroups.protocols.MERGE2.up(MERGE2.java:209) 
    at org.jgroups.protocols.Discovery.up(Discovery.java:379) 
    at org.jgroups.protocols.TP.passMessageUp(TP.java:1399) 
    at org.jgroups.protocols.TP$MyHandler.run(TP.java:1585) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918) 
    at java.lang.Thread.run(Thread.java:680) 

可有人請讓我知道我可以做錯誤的,得到這個錯誤?

回答

0

請使用Util.objectFromByteBuffer(msg.getBuffer())先反序列化您的對象,然後執行任何操作。

相關問題