当前位置: 首页 > 知识库问答 >
问题:

骆驼路由自动将序列化对象转换为xml

丌官寒
2023-03-14
from("someRoute")
 .setExchangePattern(ExchangePattern.InOnly)
 .doTry().processRef("processor")
  .inOnly("destinationQueue")
 .doCatch(Exception.class)
  .to("errorQueue");
JaxbClass message =  mapper.mapHL7ToXML(hl7Message);        
exchange.getIn().setBody(message) ;
<dependency>
    <groupId>org.apache.camel</groupId>
    <artifactId>camel-jaxb</artifactId>
    <version>2.10.3</version>
</dependency>

共有1个答案

洪宏硕
2023-03-14

阅读JMS及其支持的消息类型。由于您的java对象是不可序列化的,所以它不能使用它,然后回退到使用文本消息,在发送之前您的对象会转换为文本消息。

您可以通过jmsMessageType选项告诉Camel您想要哪种JMS类型。http://camel.apache.org/jms

并且在camel-jaxb中有一个类型转换器,它可以将JAXB注释过的java对象转换为XML,从而在您的用例中发生了什么。

 类似资料:
  • 问题内容: 正在具有json数组的String如下 我想将此jsonarray转换为。为此,我添加了maven依赖项“ ”,还为员工编写了pojo类。但是当我尝试运行下面的代码时 正在收到以下异常。 有人可以告诉我丢失了什么或做错了什么吗 问题答案: 问题不在您的代码中,而在您的json中: 这表示一个包含属性Compemployes的对象,该属性是Employee的列表。在这种情况下,您应该创建

  • 问题内容: 我对javascript并不太熟悉,而且令人赞叹,因为我无法向使用ORM名称Sequelize.js从数据库中获取的对象添加新属性。 为了避免这种情况,我使用此技巧: 因此,通常如何向对象添加新属性。 如果有帮助,我使用sequelize-postgres版本2.0.x。 更新。 console.log(节点): 接下来,我想您会想到的是:“好吧,很简单,只需将您的属性添加到dataV

  • 问题内容: 这个下课 需要转换为 我尝试将对象手动传递给将变量设置为字典并返回字典的函数。但是,我希望有一种更好的方法来实现这一目标。 问题答案: 在Swift 4中,您可以从类型继承。

  • 我试图用序列化方法解组一个bean,它不是当前的bundle,而是一个commons components bundle。 当骆驼尝试解组我的豆子时,我收到以下错误: 22:43:11,865|ERROR|nModule-thread-1|默认错误处理程序|89-0_33-核心-0_33-06-11|交付失败的交换ID: ID-ITEM-64684-49962-1354223882336-2。交付

  • 我正在使用Spring Kafka集成,我有自己的值通用序列化器/反序列化器,如下所示 序列化程序: 反序列化程序: 序列化程序工作得很好,但是当涉及到在消费消息时反序列化值时,我得到了一个而不是所需的对象,请告诉我我错在哪里,提前感谢。

  • 我有一个简单的路线,看起来像这样: CXF 配置也非常简单: 此简单路由失败,出现以下异常 这是消息历史记录,表明它在