第 311 章 SOAP DataFormat


作为 Camel 版本 2.3 可用

SOAP 是一个数据格式,使用 JAXB2 和 JAX-WS 注释来组合和联合 SOAP 有效负载。它提供了 Apache CXF 的基本功能,无需 CXF 堆栈。

支持的 SOAP 版本

默认支持 SOAP 1.1。从 Camel 2.11 开始支持 SOAP 1.2。

命名空间前缀映射

如需有关如何使用 SOAP 数据格式时控制命名空间前缀映射的详细信息,请参阅 JAXB

311.1. SOAP 选项

SOAP 数据格式支持 7 个选项,它们如下。

名称默认Java 类型描述

contextPath

 

字符串

您的 JAXB 类所在的软件包名称。

encoding

 

字符串

使用规则规则并使用特定的编码

elementNameStrategyRef

 

字符串

指的是从 registry 查找的元素策略。元素名称策略用于两个目的。第一种方法是查找给定对象的 xml 元素名称,并在将对象放入 SOAP 消息时采取 soap 操作。第二个是查找给定 soap 错误名称的 Exception 类。以下三个元素策略类名称是开箱即用的。QNameStrategy - 使用在实例化时配置的固定 qName。不支持 TypeNameStrategy 时出现异常查找 - 使用给定类型的 XMLType 注解中的名称和命名空间。如果没有设置 namespace,则使用 package-info。异常查找不支持 ServiceInterfaceStrategy - 使用 webservice 接口中的信息来确定类型名称,并为 SOAP 错误或类似工具找到异常类。这个类位于软件包名称 org.apache.camel.dataformat. makingp.name。如果您已使用 cxf-codegen 或类似工具生成了 web 服务 stub 代码,那么您可能想使用 ServiceInterface.apache.camel.dataformat.rhnp.name。如果没有注解的服务接口,您应该使用 QNameStrategy 或 TypeNameStrategy。

version

1.1

字符串

SOAP 版本应为 1.1 或 1.2。默认为 1.1

namespacePrefixRef

 

字符串

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

schema

 

字符串

对现有架构进行验证。您可以使用前缀 classpath:、file: 或 http: 指定资源通过解析的方式。您可以使用 ',' 字符分隔多个 schema 文件。

contentTypeHeader

false

布尔值

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

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.