1
Jaxrs(WebClientなど)では、接続タイムアウトと読み取りタイムアウトを設定できます。グローバルタイムアウトを設定するJaxrs機能(接続+読み取り)
ClientConfiguration c = WebClient.getConfig(client);
HTTPConduit http = c.getHttpConduit();
HTTPClientPolicy httpClientPolicy = new HTTPClientPolicy();
httpClientPolicy.setConnectionTimeout(timeout);
httpClientPolicy.setReceiveTimeout(timeout);
httpClientPolicy.setAllowChunking(false);
http.setClient(httpClientPolicy);
私は、私は本当に接続中または受信中に費やされているどのくらいの時間を気にしないの両方を含んでタイムアウトを設定したいと思いますが、私の要件は、X秒で応答を取得するか、単に検索を破棄することです。
インターセプターを経由している可能性がありますが、実行可能かどうかわかりません – cocorossello
'WebClient' javadocと現在のリクエストを中止することはできないため、インターセプタを使用することはできません。これは、メインリクエスト(および応答/タイムアウトまでブロックされているメインスレッド)と同じスレッドで実行されるためです。タイムアウトを指定して追加の監視スレッドを作成し、タイムアウトまたは正しい応答の両方の場合に、非同期で作業する必要があります。それが価値あるものかどうかを検討してください... – pedrofb