2012-04-16 12 views
0

F5アプライアンスの背後に隠されたWebサービスがあります。 F5はhttps要求を受け取り、メッセージを解読し、解読されたメッセージをWebサービスに送信します。 WebサービスはF5への解読されたメッセージで応答し、F5は暗号化してWebサービス要求の発信者に送り返します。Java Webサービスクライアントの問題 - HTTPヘッダー - ホストフィールド

このWebサービスは、一部の言語で書かれたクライアントでは動作しますが、他の言語では動作しません。この質問は、Websphere JREとライブラリに基づくJava実装を指します。他の(作業中の)言語は、HTTPヘッダーのHostフィールドをourhost.netに設定しますが、Java(httpsを使用して送信する場合)は、HTTPヘッダーのHostフィールドをourhost.net:443に設定しています。私はhttpsがポート443を経由して来ることに気が付いていますが、Javaがなぜそのポートをホストフィールドに含める必要があるのか​​理解できません。

アイデア?

+0

これは、WebSphereのビルトインWebサービスクライアントのプロキシ/ラッパーライブラリーを使用していますか?どのバージョンのWebSphere、どのAPIタイプですか? JAX-WS? JAX-RPC?おそらくWSDLには次のものはありません。サービスエンドポイントの443は正しいですか?あなたは生成されたコードを見て、:443がそれにあるかどうかを見ることができますか? – dbreaux

+0

はい - ビルトイン... WebSphere 7 ... JAX-WS。 WSDLには443はありません。生成されたコードには443がありません。 私たちの現在の解決策は、I-Rule(それが何であるか分かりません)を使用してF5にHTTPヘッダー(443を削除)を更新させることです。 –

答えて

0

443はHTTPSのデフォルトポートなので、ホストヘッダーに含める必要はありませんが、正しくないこともありません。 section 14.23 of the HTTP 1.1 specを参照してください。

関連する問題