第 169 章 JAXB DataFormat
作为 Camel 版本 1.0 可用
JAXB 是一个数据格式,它使用 JAXB2 XML marshalling 标准,它包含在 Java 6 中,将 XML 有效负载解包到 Java 对象,或封装 Java 对象到 XML 有效负载中。
169.1. 选项 复制链接链接已复制到粘贴板!
JAXB 数据格式支持 18 个选项,它们列如下。
| 名称 | 默认 | Java 类型 | 描述 | 
|---|---|---|---|
|   contextPath  |   
								  |   您的 JAXB 类所在的软件包名称。  | |
|   schema  |   
								  |   对现有架构进行验证。您可以使用前缀 classpath:、file: 或 http: 指定资源通过解析的方式。您可以使用 ',' 字符分隔多个 schema 文件。  | |
|   schemaSeverityLevel  |   
								  |   
								  |   设置在对 schema 验证时使用的 schema 严重性级别。此级别决定了触发 JAXB 以继续解析的最低严重性错误。默认值为 0(warning)意味着任何错误(warning、error 或 fatal 错误)将触发 JAXB 来停止。有三个级别: 0=warning, 1=error, 2=fatal 错误。  | 
|   prettyPrint  |   
								  |   
								  |   启用大量打印输出。默认为 false。  | 
|   objectFactory  |   
								  |   
								  |   是否允许使用对象要素类在汇总过程中创建 POJO 类。这只适用于没有通过 JAXB 标注并提供 jaxb.index 描述符文件的 POJO 类。  | 
|   ignoreJAXBElement  |   
								  |   
								  |   是否忽略 JAXBElement 元素 - 在非常特殊用例中只需要设置为 false。  | 
|   mustBeJAXBElement  |   
								  |   
								  |   marhsalling 是否需要使用 JAXB 注释的 java 对象。如果不是,则失败。这个选项可以设置为 false 来放lax,例如当数据已采用 XML 格式时。  | 
|   filterNonXmlChars  |   
								  |   
								  |   忽略非 xml characheters,并将其替换为空空间。  | 
|   encoding  |   
								  |   使用规则规则并使用特定的编码  | |
|   fragment  |   
								  |   
								  |   开启 XML 片段树。默认情况下,JAXB 在给定类上查找 XmlRootElement 注解,以操作整个 XML 树。这很有用,但有时生成的代码没有 XmlRootElement 注解,有时您只需要树的一部分。在这种情况下,您可以使用部分卸载。要启用此行为,您需要设置属性 partClass。Camel 将把类传递给 JAXB 的 unmarshaler。  | 
|   partClass  |   
								  |   用于片段解析的类名称。查看 片段选项的更多详情。  | |
|   partNamespace  |   
								  |   用于碎片解析的 XML 命名空间。查看 片段选项的更多详情。  | |
|   namespacePrefixRef  |   
								  |   使用 JAXB 或 SOAP 总结时,JAXB 实施将自动分配命名空间前缀,如 ns2、ns3、ns4 等。要控制此映射,Camel 允许您引用包含所需映射的映射。  | |
|   xmlStreamWriterWrapper  |   
								  |   使用自定义 xml 流写入器。  | |
|   schemaLocation  |   
								  |   定义架构的位置  | |
|   noNamespaceSchemaLocation  |   
								  |   定义无命名空间模式的位置  | |
|   jaxbProviderProperties  |   
								  |   在含有自定义 JAXB 提供者属性的注册表中查找自定义 java.util.Map 来引用要与 JAXB marshaller 搭配使用的自定义 java.util.Map。  | |
|   contentTypeHeader  |   
								  |   
								  |   如果数据格式能够这样做,则数据格式是否应该以 data 格式设置 Content-Type 标头。例如,用于数据格式的 application/xml (数据格式)或 application/json 用于数据格式 marshalling to JSon etc。  |