我正在发送消息到远程队列,我无法控制。IBM Mq消息头
我发送一个XML文件作为消息,但是当应用程序读取消息它变得像
<mcd><Msd>jms_text</Msd></mcd> \0\0\0l<jms><Dst>queue:///TEST</Dst><Tms>1281475843707</Tms><Cid></Cid><Dlv>1</Dlv></jms>
消息头,我不希望这个消息头是现在和我发送此消息代码如下:
Properties props = new Properties();
props.setProperty("java.naming.factory.initial",this.initialFactory);
props.setProperty("java.naming.provider.url", url);
Context context = new InitialContext(props);
QueueConnectionFactory qcf = (QueueConnectionFactory) context.lookup(this.context);
qConn = qcf.createQueueConnection();
queue = (Queue)context.lookup(name);
qSession = qConn.createQueueSession(false, QueueSession.AUTO_ACKNOWLEDGE);
qConn.start();
QueueSender send = qSession.createSender(queue);
String text = "My xml file";
TextMessage tm = qSession.createTextMessage(text);
send.send(tm);
send.close();
我该如何避免这种情况?
嘿感谢,会尝试,让你知道 – 2010-08-17 05:05:30
嘿感谢伙计它的工作原理,我只是尝试了你的修复。现在我必须明白它是什么意思 – 2010-08-19 06:33:41
好吧,既然你在代码中做了一个解决方法,而不是设置管理对象,这意味着任何其他的应用程序或模块发送JMS消息到目标也会有同样的问题。将其设置在受管理的对象(.bindings文件,LDAP或其他)中,并且在没有代码的情况下以及使用该受管对象的所有应用程序中修复它。 – 2010-08-20 14:50:21