gpt4 book ai didi

java - 如何将自定义 SOAP-Header 元素添加到 Spring-WS 中生成的 WSDL

转载 作者:行者123 更新时间:2023-11-30 05:15:54 25 4
gpt4 key购买 nike

我们正在从 WebLogic Web 服务迁移到 Spring-WS (1.5.X)。目前我们面临一个问题:

我们需要将上下文对象(在 WLS 上作为 SOAP-Header 元素传递)从 Spring-WS 支持的服务传递到仍在 WLS 上运行的其他服务。 header 元素仍然在客户端制定,新创建的 WS (Spring-WS) 应该将其传递给其他服务。

我可以想象自定义元素将如何传递:重写 doWithMessage(WebServiceMessage message) 方法...

有没有办法在 DefaultWsdl11Definition 的帮助下生成 wsdl 以包含该自定义 header 元素?请参阅示例:

<wsdl:operation name="GetSomeInformation">
<soap:operation
soapAction="http://www.dummyservice.com/InformationService/GetSomeInformation" />
<wsdl:input>
<soap:body use="literal" />
<soap:header message="ctx:ServiceContextMessage" part="serviceContext" use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
<wsdl:fault name="Error">
<soap:fault name="Error" use="literal" />
</wsdl:fault>
</wsdl:operation>

感谢帮助

最佳答案

我们在我的项目中遇到了类似的问题。检查扩展 SuffixBasedPortTypesProvider、SuffixBasedMessagesProvider 和 Soap11Provider。我们使用 InlinedXsdSchemaTypesProvider 导入用于构建 WSDL 的架构。如果您通过调试器运行 WSDL 生成,您将掌握它的工作原理。 Spring 代码易于遵循和扩展。

关于java - 如何将自定义 SOAP-Header 元素添加到 Spring-WS 中生成的 WSDL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1320767/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com