我一直在寻找在Spring Web应用程序中配置HTTP代理的正确方法。不幸的是,每次我得到的结果都是关于AOP代理而不是HTTP代理。
基本上,我的应用程序的一个模块正在使用JAX-WS在Spring XML文件中运行一个webservice客户端配置,如下所示:
<bean id="heartBeatWebservice" class="org.springframework.remoting.jaxws.JaxWsPortProxyFactoryBean">
<property name="serviceInterface" value="the.web.service.interface"/>
<property name="wsdlDocumentUrl" value="http://thehost:theport/theservicename.wsdl"/>
<property name="serviceName" value="TheServiceName"/>
<property name="namespaceUri" value="http://the.namespace/"/>
<property name="portName" value="TheWebServicePortName"/>
</bean>
但我的应用程序必须在HTTP代理后面运行以便能够调用Web服务,我必须承认我不知道如何在Spring上下文中正确地执行它。
我尝试了一些我编写的主要课程,首先试用这段代码:
System.setProperty("http.proxyHost", "my.proxy.addr");
System.setProperty("http.proxyPort", "8080");
不幸的是,它没有按预期工作。我假设有一种很好的方法在Spring上下文中配置HTTP代理但无法找到如何...
你能给我一个提示吗?
答案 0 :(得分:7)
不需要任何特定于Spring的HTTP代理配置。
它应该使用标准的Java HTTP代理设置,所以你要走正确的路线。
您可以尝试使用-Dhttp.proxyHost=my.proxy.host -Dhttp.proxyPort=8080
而不是使用System.setProperty运行主类吗?