第 59 章 Castor DataFormat (已弃用)
从 Camel 版本 2.1 开始提供
Castor 是一个 Data Format,它使用 Cast or XML 库 将 XML 有效负载 unmarshal 到 Java 对象,或将 Java 对象嵌套到 XML 有效负载中。
通常,您可以使用 Java DSL 或 Spring XML 来使用 Castor Data Format。
59.1. 使用 Java DSL 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
from("direct:order"). marshal().castor(). to("activemq:queue:order");
from("direct:order").
marshal().castor().
to("activemq:queue:order");
例如,以下命令使用名为 Castor 的名为 DataFormat,它使用默认的 Castor 数据绑定功能。
CastorDataFormat castor = new CastorDataFormat (); from("activemq:My.Queue"). unmarshal(castor). to("mqseries:Another.Queue");
CastorDataFormat castor = new CastorDataFormat ();
from("activemq:My.Queue").
unmarshal(castor).
to("mqseries:Another.Queue");
如果您希望使用命名引用的数据格式,然后在 Registry 中定义,如通过您的 Spring XML 文件。
from("activemq:My.Queue"). unmarshal("mycastorType"). to("mqseries:Another.Queue");
from("activemq:My.Queue").
unmarshal("mycastorType").
to("mqseries:Another.Queue");
如果要通过提供映射文件来覆盖默认的映射模式,您可以进行如下设置:
CastorDataFormat castor = new CastorDataFormat (); castor.setMappingFile("mapping.xml");
CastorDataFormat castor = new CastorDataFormat ();
castor.setMappingFile("mapping.xml");
另外,如果您要对 Castor Marshaller 和 Unmarshaller 具有更多控制,您可以通过以下方式访问它们。
castor.getMarshaller(); castor.getUnmarshaller();
castor.getMarshaller();
castor.getUnmarshaller();