【问题标题】:How to pass XML file to JMS queue如何将 XML 文件传递​​到 JMS 队列
【发布时间】:2011-08-11 07:30:43
【问题描述】:

我有 .xml 文件,我想将内容发送到 JMS 队列。在这我应该将此 xml 转换为 textmessage 并发送吗?或者有没有办法可以直接发送xml。

我还想知道是否可以将对象(例如:MyClass.java 的对象)发送到 JMS 队列?

请有人指导我。

【问题讨论】:

标签: xml jms


【解决方案1】:

您可以使用 TextMessage 发送 XML。但由于 XML 已经存储在文件中,我会考虑使用 BytesMessage 仅发送原始字节内容的可能性。如果您选择第一种选择,请在重新输入文件内容时注意使用正确的编码。

Java 对象可以明确地作为 JMS 消息发送,只要它们是可序列化的。

【讨论】:

  • DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance(); DocumentBuilder docBuilder = docFactory.newDocumentBuilder();文档 doc = docBuilder.parse("/path/file.xml"); StreamResult 结果 = 新 StreamResult(new StringWriter()); DOMSource 源 = 新 DOMSource(doc);变压器.transform(源,结果);字符串 xmlString = result.getWriter().toString();如果我使用第一个替代方案,我应该这样做吗?
  • 嗯,我对在流结果中使用 Writer 有点警惕——不是 100% 确定 w.r.t 编码等的后果。如果使用 BytesMessage,则不必经过解析和序列化步骤。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-05-04
  • 2014-12-09
  • 2017-07-08
  • 2014-12-06
  • 1970-01-01
  • 2014-02-22
相关资源
最近更新 更多