48.11. 控制命名空间前缀映射


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

例如,在 Spring XML 中,我们可以使用 映射 定义映射。在下面的映射文件中,我们将 SOAP 映射到将 soap 用作前缀。虽然我们的自定义命名空间 http://www.mycompany.com/foo/2 没有使用任何前缀。

 <util:map id="myMap">
    <entry key="http://www.w3.org/2003/05/soap-envelope" value="soap"/>
    <!-- we don't want any prefix for our namespace -->
    <entry key="http://www.mycompany.com/foo/2" value=""/>
 </util:map>
Copy to Clipboard Toggle word wrap

要在 JAXB 或 SOAP 数据格式中使用它,您可以使用 namespacePrefixRef 属性引用此映射,如下所示。然后,Camel 将在 Registry 中查找 ID 为 my Map 的 java.util.Map,这是我们所定义的内容。

 <marshal>
    <soap version="1.2" contextPath="com.mycompany.foo" namespacePrefixRef="myMap"/>
 </marshal>
Copy to Clipboard Toggle word wrap
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat