gpt4 book ai didi

java - 如何通过需要身份验证的代理发送 SOAP 消息?

转载 作者:太空宇宙 更新时间:2023-11-04 13:34:19 35 4
gpt4 key购买 nike

我正在用 Apache Tomcat 7 托管的 java 1.7 编写一个 servlet,并且尝试将 SOAP 1.2 消息发送到 Web 服务。这不是一个非常具有挑战性的功能,所以我编写了一小段代码来实现它:

    SOAPConnectionFactory soapConnectionFactory = SOAPConnectionFactory.newInstance();
SOAPConnection soapConnection = soapConnectionFactory.createConnection();

String url = petition.getUrl();
SOAPMessage soapResponse = soapConnection.call(createSOAPRequest(xml), url);

问题是我的公司代理正在停止调用,并且我总是收到超时异常。我发现我可以像这样设置代理设置,但它不包括引入完成调用所需的代理身份验证的方法。

//Set the http proxy to webcache.example.com:8080
System.setProperty("http.proxyHost", "webcache.example.com");
System.setProperty("http.proxyPort", "8080");

有没有办法让我登录代理而不必使用 URLConnection 发送 SOAP 消息?

最佳答案

我建议您使用具有基本身份验证的 Jax-ws 客户端,以下代码设置身份验证配置而不使用 URLConnection:

Service s = new Service();
Port port = s.getPort();

BindingProvider prov = (BindingProvider)port;
prov.getRequestContext().put(BindingProvider.USERNAME_PROPERTY, "myusername");
prov.getRequestContext().put(BindingProvider.PASSWORD_PROPERTY, "mypassword");

port.call();

关于java - 如何通过需要身份验证的代理发送 SOAP 消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31855935/

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