WSDL から wsimport を使用して生成された Web サービス実装があります。このサービスは、Spring Web アプリケーションの Tomcat サーバーにデプロイされます。スプリングの設定ファイル(webservice部分のみ)はこんな感じ
<wss:binding url="/fooService">
<wss:service>
<ws:service bean="#fooService">
</wss:service>
</wss:binding>
この Web アプリケーションを Tomcat にデプロイすると、次の場所に移動すると WSDL を取得できます。
http://localhost:8080/foo/fooService?wsdl
wsdl soap:address プロパティは次のようになります。
<service name="FooService">
<port name="FooService" binding="tns:FooServiceBinding">
<soap:address location="http://localhost:8080/foo/fooService"/>
</port>
</service>
そして今のところ、それはすべて大丈夫です。
問題は、実稼働環境に Apache Web サーバーがあり、このサーバーが要求を Tomcat にリダイレクトすることです。これも機能しますが、WSDL を取得すると、soap:address はまだ localhost:8080 であり、これを Web サービスへの公開 URL にする必要があります。
何か案は?
どうもありがとうございました。