您将如何使用Java在WebSphere MQ中实现Content Enricher?
鉴于队列中提供了现有的输入消息,以下是我的一些想法,其中没有一个让我满意:
clone()
或serialize()
方法。setXXXProperty()
设置其他属性并发送
向前。这会抛出一个异常,表明该消息是
只读的。getPropertyNames()
可以帮助做到这一点,但它没有说明
属性类型,因此这些信息将丢失。答案 0 :(得分:1)
简而言之,IBM集成总线可以在消息流中完成...但是,我还要提供WMQ Java答案:
接收到的消息对象可以被修改并发送回去...您需要做的就是从该消息中读取所需的所有内容到某个java对象。例如,您可以使用Map for Properties。然后调用clearProperties(),然后设置修改后的属性。调用clearProperties()(http://docs.oracle.com/javaee/5/api/javax/jms/Message.html#clearProperties%28%29)
后,readonly的问题就消失了所以(2)和(3)的混合可以帮助解决问题。