首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在JBossMQ中从SpyMessage获取底层对象

如何在JBossMQ中从SpyMessage获取底层对象
EN

Stack Overflow用户
提问于 2013-03-04 17:04:11
回答 1查看 50关注 0票数 0

我正在尝试编写一个简单的Java程序,它使用JDBC读取JBossMQ的jms_messages表。我使用的是JBoss 4.0.4.GA。

我可以获得一个SpyMessage,但是如何获得实际的消息内容(在我正在查看的特定情况下,这是一个对象)。

我有一个来自以下语句的结果集"rs“:

代码语言:javascript
复制
SELECT messageid, messageblob FROM jms_messages WHERE DESTINATION LIKE 'TOPIC.MyTopic%' limit 3"

然后我这样做(基于JBoss代码):

代码语言:javascript
复制
long messageid = rs.getLong(1);
SpyMessage message = null;
byte[] st = rs.getBytes(2);
ByteArrayInputStream baip = new ByteArrayInputStream(st);
ObjectInputStream ois = new ObjectInputStream(baip);

message = SpyMessage.readMessage(ois);
message.header.messageId = messageid;

String jmstype = message.getJMSType();
String jms_message_id = message.getJMSMessageID();
System.out.println("jmstype=" +jmstype);
System.out.println("jms_message_id=" +jms_message_id);

String propertyName;
Enumeration e = message.getPropertyNames();
while (e.hasMoreElements())
{
    propertyName = (String)e.nextElement();
    System.out.println("property name = " +propertyName);
}

但是我没有打印任何属性,并且我不知道如何从SpyMessage (实际上是一个SpyObjectMessage)获取实际的对象。如果有任何建议,我将不胜感激。

我试着在JBoss论坛上问这个问题,但没有得到回复,所以我希望在这里能有更好的运气。

谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-03-04 18:35:52

对不起-答案是如此明显,我真的不确定我在想什么,当我发布这个问题时-简单地说:

代码语言:javascript
复制
Object objMessage = ((SpyObjectMessage)message).getObject();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15197876

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档