3.6.4 注意事項
Webサービスクライアント実装時の注意事項について説明します。
(1) オブジェクトの再利用
サービスクラス,ポート,およびディスパッチの生成には処理コストが掛かるので,インジェクションを利用するか(スタブベースの場合だけ),再利用することをお勧めします。オブジェクトの再利用については,それぞれ次の個所を参照してください。
-
スタブベースのWebサービスクライアントの場合
-
ディスパッチベースのWebサービスクライアントの場合
-
APIベースのWebサービスクライアントの場合
(2) プロキシ・SSL接続・ベーシック認証の設定
必要に応じて,Webサービスクライアントの実行環境に,プロキシ,SSL接続,およびベーシック認証の設定を行ってください。詳細については,それぞれ次の個所を参照してください。
-
プロキシの設定
-
SSL接続の設定
-
ベーシック認証の設定
(3) Windows環境での注意事項
Webサービスクライアントから大量のリクエストを送信するような環境では,次の例外が記録されることがあります。
java.net.BindException: Address already in use: connect [errno=10048, syscall=select]
例えば,サーブレットとして実装したWebサービスクライアントに対して大量のリクエストが到着すると,例外が発生します。
このような場合は,次に示すどちらか,または両方の値を見直してください。
-
OSで使用できるポート番号の範囲を広げる
-
TIME_WAITの継続時間を短くする
例えば,レジストリのMaxUserPortやTcpTimedWaitDelayの設定を見直します。ただし,OSのバージョンやエディション,セキュリティ更新プログラムの適用状況によって,仕様が異なるため,詳細については各OSのドキュメントを参照してください。また,これら設定はOS全体に影響が及ぶため,注意が必要です。