2013-02-28 145 views
1

我想序列化一个MQMessage并将其保存到磁盘/数据库。我的目标是能够在以后反序列化所有标题,命名属性和内容。序列化/反序列化MQMessage

要清楚我需要的是这样的:

byte[] serialize(MQMessage m); 
MQMessage deserialize(byte[] b); 

,使得执行以下操作时:

MQMessage M = deserialize(serialize(m)); 

我所得到的是M是的m“克隆”。

如果需要,可以重新提交要处理的消息(在大型MQ网络中,应用迟早会丢失/丢失一些消息)。因此,我需要能够反序列化我想要重新提交的每个MQMessage的1:1副本(即不仅仅是它的内容,还包括它的头部,属性,编码,格式等等)。

不幸的是,似乎MQMessage没有实现任何类型的序列化机制。你会如何去做这件事?手工编制序列化/反序列化代码是唯一的方法吗?

回答

0

为什么重新发明车轮。已经有很多免费和商业工具可用于消息重播。

这里是免费的MQ工具列表: http://www.capitalware.biz/mq_tools.html

这里是商业MQ工具列表: http://www.capitalware.biz/mq_tools_comm.html

+0

感谢您的答复,但我的问题是:“我该怎么办呢?” ,而不是“我应该使用哪些工具?” (也就是说,我在StackOverflow上发布了一个问题;您给出的答案在SuperUser上可以正常运行)。 – CAFxX 2013-03-01 13:07:21

+0

另外,由于您正在发布链接到您的网站,您可能希望知道某些链接已过时(404等)。 – CAFxX 2013-03-01 13:17:39