48.2. 选项


JAXB dataformat 支持 20 个选项,如下所列。

Expand
Name默认值Java 类型描述

contextPath

 

字符串

JAXB 类所在的 必需 软件包名称。

contextPathIsClassName

false

布尔值

这可设置为 true 来标记 contextPath 引用一个 classname 而不是软件包名称。

schema

 

字符串

针对现有架构进行验证。您可以使用前缀 classpath:、file: 或 http: 指定应如何解析资源。您可以使用 ',' 字符分隔多个架构文件。

schemaSeverityLevel

0

Enum

设置在针对 schema 验证时要使用的模式严重性级别。此级别决定了触发 JAXB 停止继续解析的最低严重性错误。默认值 0 (警告)表示任何错误(警告、错误或严重错误)将触发 JAXB 来停止。有三个级别: 0=warning, 1=error, 2=fatal 错误。

Enum 值:

  • 0
  • 1
  • 2

prettyPrint

false

布尔值

要启用用户化的打印输出,请执行以下操作:默认为 false。

objectFactory

false

布尔值

是否允许使用 ObjectFactory 类在 marshalling 期间创建 POJO 类。这只适用于没有通过 JAXB 注解的 POJO 类,并提供 jaxb.index 描述符文件。

ignoreJAXBElement

false

布尔值

是否忽略 JAXBElement 元素 - 只在非常特殊用例中,只需要设置为 false。

mustBeJAXBElement

false

布尔值

marhsalling 必须是带有 JAXB 注释的 java 对象。如果不是,则失败。这个选项可以被设置为 false 来放宽,比如当数据已采用 XML 格式时。

filterNonXmlChars

false

布尔值

忽略非 xml characheters,并将其替换为空空间。

编码

 

字符串

overrule 并使用特定的编码。

片段

false

布尔值

打开 marshalling XML 片段树。默认情况下,JAXB 在给定类上查找 XmlRootElement 注释,以便在整个 XML 树上运行。这很有用,但有时生成的代码没有 XmlRootElement 注解,有时您需要 unmarshall 只是树的一部分。在这种情况下,您可以使用 partial unmarshalling。要启用此功能,您需要设置属性 partClass。Camel 会将此类传递给 JAXB 的 unmarshaler。

partClass

 

字符串

用于碎片解析的类名称。请参阅 fragment 选项的更多详情。

partNamespace

 

字符串

用于碎片解析的 XML 命名空间。请参阅 fragment 选项的更多详情。

namespacePrefixRef

 

字符串

使用 JAXB 或 SOAP 总结时,JAXB 实施将自动分配命名空间前缀,如 ns2、ns3、ns4 等。要控制此映射,Camel 允许您引用包含所需映射的映射。

xmlStreamWriterWrapper

 

字符串

使用自定义 xml 流写器。

schemaLocation

 

字符串

定义架构的位置。

noNamespaceSchemaLocation

 

字符串

定义无命名空间模式的位置。

jaxbProviderProperties

 

字符串

指的是要在含有要与 JAXB marshaller 搭配使用的自定义 JAXB 提供程序属性的注册表中查找的自定义 java.util.Map。

contentTypeHeader

true

布尔值

数据格式是否应该使用数据格式的类型设置 Content-Type 标头。例如,用于数据格式到 XML 的 application/xml 或用于数据格式的 application/json 发送到 JSON。

accessExternalSchemaProtocols

false

字符串

仅在启用了 schema 验证时使用。限制对由 schemaLocation 属性 Import 和 Include 元素设置的用于外部引用指定的协议的访问。协议的示例包括 file、http、jar:file. false 或 none 用于拒绝对外部引用的所有访问;特定的协议(如 file)来仅授予该协议的权限;关键字 all 为所有协议授予权限。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat