为Tomcat Web服务器设置HTTP代理

基本上,我试图通过企业代理/防火墙(我没有直接控制)从Tomcat服务器进行SOAP调用,我试图添加信息到catalina.properties文件,如下所示:

http.proxyPort=80 http.proxyHost=www-proxy.company.com 

我仍然在stdout日志中超时。 我是否需要做其他事情,如果没有,还有另一种方法来testingSOAP调用?

创build一个setenv.sh(或setenv.bat如果运行窗口),如果你还没有一个,并添加下面的Java选项:

 JAVA_OPTS="-Dhttp.proxySet=true -Dhttp.proxyHost=<proxy_hostname> -Dhttp.proxyPort=<port_number> -Dhttp.nonProxyHosts=<domain_one>|<domain two> $JAVA_OPTS" 

这应该很好。

您也可以在tomcat中实现HTTP代理https代理非http代理 。 你需要更新两个文件,即../bin/Catalina.sh和。 ./conf/cataliana.properties

详细configuration和步骤在这里提到: http : //w3devops.com/add-http-https-proxy-http-non-proxy-jenkins-via-tomcat-server/

如果您只需要通过代理使用soap调用,则可以使用jproxyloader。 有了这个库,你可以通过代理传递肥皂调用,所有其他的调用将不会使用代理。 有关完整的设置,请参阅http://jproxyloader.sourceforge.net/examples/web-application-on-tomcat.html

为了让我的Docker容器中运行Tomcat,我使用了以下设置:

JAVA_OPTS=-Dhttps.proxyHost=PROXYHOST -Dhttps.proxyPort=PROXYPORT -DproxySet=true -DproxyHost=PROXYHOST -DproxyPort=PROXYPORT