gpt4 book ai didi

java - C# WCF AddressHeader 的 Java Apache CXF 等效项是什么?

转载 作者:行者123 更新时间:2023-12-01 19:14:39 26 4
gpt4 key购买 nike

我正在尝试从 Java 后端服务访问用 C# 编写的旧的基于 SOAP 的系统。此 C# 应用程序正在寻找 AddressHeader根据每个请求填充特定值。我正在使用 Apache CXF 创建对此服务的请求。不幸的是,在我的一生中,我无法找到如何将此地址 header 添加到每个请求中。有谁知道 Java 中的等效项是什么以及如何使用 Apache CXF 添加它?

最佳答案

地址 header 与 SOAP header 相同,因此我们只需为每个请求添加特定的 SOAP header ,以便能够成功调用。
这是我在互联网上找到的一个例子。

ClientProxyFactoryBean factory = new JaxWsProxyFactoryBean();
factory.setServiceClass(singz.ws.cxf.sample.SampleServiceInterface.class);
factory.setAddress("http://xxx.xxx.com/services/SampleService/v1");
SampleServiceInterface serviceClient = (SampleServiceInterface) factory.create();
Client proxy = ClientProxy.getClient(serviceClient);
List<Header> headersList = new ArrayList<Header>();
Header testSoapHeader1 = new Header(new QName("uri:singz.ws.sample", "soapheader1"), "SOAP Header Message 1", new JAXBDataBinding(String.class));
Header testSoapHeader2 = new Header(new QName("uri:singz.ws.sample", "soapheader2"), "SOAP Header Message 2", new JAXBDataBinding(String.class));
headersList.add(testSoapHeader1);
headersList.add(testSoapHeader2);
proxy.getRequestContext().put(Header.HEADER_LIST, headersList);

请引用以下链接,希望对您有用。
https://dzone.com/articles/apache-cxf-how-add-custom-soap-0
How do you add a Soap Header defined in a wsdl to a web service client in CXF?
https://dzone.com/articles/apache-cxf-how-add-custom-soap
如果有什么需要我帮忙的,请随时告诉我。

关于java - C# WCF AddressHeader 的 Java Apache CXF 等效项是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59431793/

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