クライアントが、soap アプリケーションが実行されているサーバーから wsdls にアクセスすることを望んでいません。したがって、クライアントが実際の SOAP サービスにアクセスするために直接消費できる wsdl ファイルにアクセスできるようにする目的を果たす別のサーバーから、クライアントが自分の wsdl にアクセスできるようにしたいと考えています。
どうすればいいですか。
WSDL ファイルの Web サービスの URL を置き換えることで、これを実現できると思います。たとえば、Web サービスの実装が 192.168.0.20 で実行されており、wsdl ファイルが 192.168.0.21 にデプロイされている場合、WSDL ファイルで Web サービスの URL を変更します。たとえば、このコード スニペットは wsdl ファイルの下部にあります。
<wsdl:service name="TestWebService">
<wsdl:port binding="impl:TestWebServiceBinding" name="TestWebService">
<wsdlsoap:address location="http://localhost:8080/Project/services/TestWebService"/>
</wsdl:port>
</wsdl:service>
to
<wsdl:service name="TestWebService">
<wsdl:port binding="impl:TestWebServiceBinding" name="TestWebService">
<wsdlsoap:address location="http://192.168.0.21:8080/Project/services/TestWebService"/>
</wsdl:port>
</wsdl:service>
それが機能することを願っています。クロスドメインにアクセスするには、両方のサーバーでsslを構成する必要があります。
ありがとう