2012-04-26 124 views
0

我正在使用Websphere MQ 6.x,並且在從隊列中讀取對象時出現以下異常。Websphere JMS:無法反序列化對象

Caused by: javax.jms.MessageFormatException: MQJMS1061: Unable to deserialize object 
    at com.ibm.jms.JMSMessage.newMessageFormatException(JMSMessage.java:4982) 
    at com.ibm.jms.JMSObjectMessage.getObject(JMSObjectMessage.java:289) 

我能夠使用WMQ工具查看消息(類)的序列化版本。但是當應用程序讀取它時,會發生這種異常。

任何想法爲什麼?

回答

0

我認爲早期的6.x版本有一個原始類型的問題。也許它是這樣的:http://www-01.ibm.com/support/docview.wss?uid = swg1IC50448

+0

不,我的類不包含一個持有原語的Class對象 – 2012-04-26 21:14:20

0

您是否嘗試過使用除您的應用程序之外的其他工具從隊列中讀取和寫入消息?

您可以嘗試使用RFH Util或MQ Explorer來查看是否可以使用RFH Util讀取消息並將消息寫入隊列,以查看問題出在您的應用程序還是MQ基礎架構上。

從MQ隊列中讀取消息的應用程序是什麼?

HTH

Manglu

+0

我能夠連接到隊列管理器並使用WMQ瀏覽隊列中的消息而沒有任何問題 – 2012-04-27 13:34:55

+0

正如Nicholas所說,我認爲這是時候查看整個堆棧跟蹤以查看可能導致此問題的原因。 – Manglu 2012-04-29 23:43:55

+0

日誌的其餘部分包含我無法根據公司政策分享的專有信息。抱歉。 – 2012-04-30 19:14:03

0

是否有可能應用程序讀取消息不具有的類,在它的類路徑?或者更微妙的問題,它可能對線程的上下文類加載器不可見。

您是否有更長的堆棧跟蹤可能提供更多信息?