sep*_*ber 3 java web-services spring-ws
我有一个SOAP Web服务端点URL(比如说:“ EP1”),我们只能通过代理服务器进行连接。
我们正在使用org.springframework.ws.client.core.WebServiceTemplate类使用Web服务。
我的问题是,有没有一种方法可以传递/设置WebServiceTemplate上的代理服务器详细信息以连接到端点URL“ EP1”?
您可以在构建时HttpClient
通过指定自定义。然后,您可以将包含代理的默认请求配置传递给客户端。这样的事情应该起作用:HttpComponentsMessageSender
WebServiceTemplate
RequestConfig config = RequestConfig
.custom()
.setProxy(new HttpHost("host"))
.build();
CloseableHttpClient client = HttpClients
.custom()
.setDefaultRequestConfig(config)
.build();
HttpComponentsMessageSender messageSender = new HttpComponentsMessageSender(client);
WebServiceTemplate wsTemplate = new WebServiceTemplate();
wsTemplate.setMessageSender(messageSender);
// Set other required properties ...
Run Code Online (Sandbox Code Playgroud)
您可能需要在WebServiceTemplate
对象上或HttpClient
根据需要设置其他属性,依此类推。但这应该证明基本概念。
还请看一下该示例,该示例说明了Apache HTTP客户端中代理的用法。
您必须使用 VM 参数:-Dhttp.proxyHost=mydomain.com -Dhttp.proxyPort=8080
请记住,此设置适用于从 Java 发出的所有 HTTP 请求。
归档时间: |
|
查看次数: |
7183 次 |
最近记录: |