Apache Axis 2 を使用して SOAP クライアントを実装しています。SOAP クライアントは大量のリクエストを処理する必要があるため、接続プールを使用しています。
そのためには、WSDL ファイルから生成されたスタブのいくつかのトランスポート層構成を設定する必要がありました。
stub._getServiceClient().getOptions().setProperty(HTTPConstants.REUSE_HTTP_CLIENT, Constants.VALUE_TRUE);
MultiThreadedHttpConnectionManager connectionManager = new MultiThreadedHttpConnectionManager();
connectionManager.getParams().setDefaultMaxConnectionsPerHost(MAX_CONNECTIONS_PER_HOST);
connectionManager.closeIdleConnections(IDLE_CONNECTION_TIMEOUT);
HttpClient httpClient = new HttpClient(connectionManager);
stub._getServiceClient().getOptions().setProperty(HTTPConstants.CACHED_HTTP_CLIENT, httpClient);
私のクライアントは問題なく動作しているようです。ただし、接続プールが正しく機能しているかどうかをテストする方法を知りたいです (つまり、作成された接続は、IDLE_CONNECTION_TIMEOUT 定数で定義された時間後にのみ破棄されます)。何か案は?