Java Tomcat与代理服务器对话

Java Tomcat与代理服务器对话,java,tomcat,proxy,Java,Tomcat,Proxy,我在linux rhel 5中的tomcat上部署了一个应用程序,现在这个应用程序对internet进行外部调用,我的服务器在代理服务器后面,现在我如何配置tomcat服务器以使其理解代理 我是否可以进行配置,将tomcat发送的所有请求重定向到外部服务器 还要提到的是,我确实在catalina.properties中创建了条目 http.proxyHost= http.proxyPort=8080或者,在catalina.bat中将它们配置为VM参数 -Dhttp.proxyHost=-Dpr

我在linux rhel 5中的tomcat上部署了一个应用程序,现在这个应用程序对internet进行外部调用,我的服务器在代理服务器后面,现在我如何配置tomcat服务器以使其理解代理

我是否可以进行配置,将tomcat发送的所有请求重定向到外部服务器

还要提到的是,我确实在catalina.properties中创建了条目

http.proxyHost=


http.proxyPort=8080

或者,在catalina.bat中将它们配置为VM参数

-Dhttp.proxyHost=-DproxyPort=8080

另一种方法是在应用程序级别配置它们。如果您使用java自己的api来调用外部url,那么可以按如下方式设置代理。如果您使用的是另一个库,如ApacheHttpClient,它提供了配置代理的方法

    SocketAddress proxyAddress = new InetSocketAddress(proxyHost, proxyPort);
    Proxy proxy = new Proxy(Type.HTTP, proxyAddress);

    URL url = new URL(externalURL);
    HttpURLConnection conn = (HttpURLConnection) url.openConnection(proxy);

或者,在catalina.bat中将它们配置为VM参数

-Dhttp.proxyHost=-DproxyPort=8080

另一种方法是在应用程序级别配置它们。如果您使用java自己的api来调用外部url,那么可以按如下方式设置代理。如果您使用的是另一个库,如ApacheHttpClient,它提供了配置代理的方法

    SocketAddress proxyAddress = new InetSocketAddress(proxyHost, proxyPort);
    Proxy proxy = new Proxy(Type.HTTP, proxyAddress);

    URL url = new URL(externalURL);
    HttpURLConnection conn = (HttpURLConnection) url.openConnection(proxy);

我尝试在catalina.sh中使用与使用linux env相同的代码。这是我正在使用的第三方应用程序,因此我无法真正更改代码。在tomcat或web服务器中有什么我可以做的吗?我试着在catalina.sh中使用与在linux环境中使用相同的工具。这是我正在使用的第三方应用程序,因此我无法真正更改代码。我能在tomcat或web服务器上做些什么吗