我正在發送消息到遠程隊列,我無法控制。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