第 175 章 JiBX DataFormat

可作为 Camel 版本 2.6 提供。

JiBX 是一个数据格式,它使用 JiBX 库来回 对 XML 对象进行 marshal 和 unmarshal Java 对象。

// lets turn Object messages into XML then send to MQSeries
from("activemq:My.Queue").
  marshal().jibx().
  to("mqseries:Another.Queue");

请注意,marshaling 进程可以在运行时识别消息类型。但是,从 XML 中解封消息时,我们需要明确指定目标类。

// lets turn XML into PurchaseOrder message
from("mqseries:Another.Queue").
  unmarshal().jibx(PurchaseOrder.class).
  to("activemq:My.Queue");

175.1. 选项

JiBX 数据格式支持 3 个选项,它们如下所列。

名称默认Java 类型描述

unmarshallClass

 

字符串

从 XML 拉取到 Java 时使用的类名称。

bindingName

 

字符串

使用自定义绑定工厂

contentTypeHeader

false

布尔值

如果数据格式能够这样做,则数据格式是否应该以 data 格式设置 Content-Type 标头。例如,用于数据格式的 application/xml (数据格式)或 application/json 用于数据格式 marshalling to JSon etc。