Linux の Websphere コンテナーに WS クライアントをデプロイし、別のアプリケーション (CXF 実装を使用) によって発行された WebService を正常に呼び出すことができます。Windows の Tomcat コンテナーで同じクライアントを試してみると、動作が異なります。
- Web サービス呼び出しを呼び出す前に、クライアントは URL A でサーバーから WSDL を要求します。
- サーバーはクライアントを別の URL B にリダイレクトします
- クライアントは URL B から WSDL を取得します。
- WSDL には XSD ファイルへの参照があるため、リダイレクトが XSD ファイルにも適用されると想定して、クライアントは URL B から XSD を要求します。
- サーバーが見つからないというエラーで応答し、通信が失敗する
私の質問は次のとおりです。
- A) クライアントは、XSD が URL B にあると想定しているのに、実際には URL A にあるとはどのように考えられるのでしょうか?
- B) 同じクライアントが、Linux の Websphere で実行している場合は WSDL を要求せず、Windows の Tomcat で実行している場合は要求するのはなぜですか? WSDL を要求しないようにして、リダイレクトの問題を回避する方法はありますか?
よろしくお願いします!!!