我有.xml
文件,我想將內容發送到JMS隊列。在這個應該我將這個XML轉換爲textmessage併發送?或者有沒有一種方法可以直接發送xml。如何將XML文件傳遞給JMS隊列
而且我想知道是否可以將對象(例如:MyClass.java
的對象)發送到JMS隊列?
請有人指導我。
我有.xml
文件,我想將內容發送到JMS隊列。在這個應該我將這個XML轉換爲textmessage併發送?或者有沒有一種方法可以直接發送xml。如何將XML文件傳遞給JMS隊列
而且我想知道是否可以將對象(例如:MyClass.java
的對象)發送到JMS隊列?
請有人指導我。
您可以使用TextMessage發送XML。但由於XML已經存儲在文件中,因此我會考慮使用BytesMessage發送原始字節內容的可能性。如果您選擇第一種替代方法,請在redin文件內容時小心使用正確的編碼。
Java對象可以作爲JMS消息明確發送,只要它們是可序列化的即可。
DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance(); DocumentBuilder docBuilder = docFactory.newDocumentBuilder(); Document doc = docBuilder.parse(「/ path/file.xml」); StreamResult result = new StreamResult(new StringWriter()); DOMSource source = new DOMSource(doc); transformer.transform(source,result); String xmlString = result.getWriter()。toString(); 如果即時通訊使用第一個替代方案是我應該去的方式嗎? – Isuru
嗯,我對在Writer中使用流結果有點謹慎 - 不是100%肯定w.r.t編碼的結果等等。如果您使用BytesMessage,則不必經過解析和序列化步驟。 –
在http://stackoverflow.com/questions/9891558/sending-a-xml-message-to-jms-using-c-sharp/9891723#9891723 – ldgorman
我的回答重複發送XML作爲ByteMessage不是一個好想法:請參閱http://stackoverflow.com/questions/10849828/when-sending-xml-to-jms-should-i-use-textmessage-or-bytesmessage?answertab=active#tab-top。 – koendewaele