HTTP プロキシ構成
プロキシの背後にいて、HTTP 送信アダプターまたはゲートウェイのプロキシ設定を構成する必要がある場合、2 つのアプローチのいずれかを適用できます。ほとんどの場合、プロキシ設定を制御する標準の Java システムプロパティに依存できます。それ以外の場合は、HTTP クライアントリクエストファクトリインスタンスの Spring Bean を明示的に構成できます。
標準 Java プロキシ構成
3 つのシステムプロパティを設定して、HTTP プロトコルハンドラーで使用されるプロキシ設定を構成できます。
http.proxyHost
: プロキシサーバーのホスト名。http.proxyPort
: ポート番号(デフォルトは80
です)。http.nonProxyHosts
: プロキシをバイパスして、直接到達する必要があるホストのリスト。これは、|
で区切られたパターンのリストです。パターンは、ワイルドカードの場合、*
で開始または終了する場合があります。これらのパターンのいずれかに一致するホストには、プロキシ経由ではなく直接接続経由で到達します。
HTTPS の場合、次のプロパティを使用できます。
https.proxyHost
: プロキシサーバーのホスト名。https.proxyPort
: ポート番号。デフォルト値は 80 です。
詳細については、docs.oracle.com/javase/jp/8/docs/technotes/guides/net/proxies.html を参照してください。
Spring の SimpleClientHttpRequestFactory
プロキシ設定をより明示的に制御する必要がある場合は、次の例に示すように、Spring の SimpleClientHttpRequestFactory
を使用して「プロキシ」プロパティを設定できます。
<bean id="requestFactory"
class="org.springframework.http.client.SimpleClientHttpRequestFactory">
<property name="proxy">
<bean id="proxy" class="java.net.Proxy">
<constructor-arg>
<util:constant static-field="java.net.Proxy.Type.HTTP"/>
</constructor-arg>
<constructor-arg>
<bean class="java.net.InetSocketAddress">
<constructor-arg value="123.0.0.1"/>
<constructor-arg value="8080"/>
</bean>
</constructor-arg>
</bean>
</property>
</bean>