工作,我已經得到了下面的代碼HTTP超時支持:org.glassfish.jersey.client.ClientProperties超時不會對WildFly
Client client = ClientBuilder.newClient().register(JacksonJsonProvider.class);
client.property(ClientProperties.CONNECT_TIMEOUT, 1000);
client.property(ClientProperties.READ_TIMEOUT, 1000);
WebTarget target = client.target(url);
Response response = target.request(MediaType.APPLICATION_JSON_TYPE).post(null, Response.class);
它工作正常的獨立Java應用程序。它等待響應1000ms,然後發生java.net.SocketTimeoutException
。
我需要在WildFly 8.2.0上使用此代碼。問題是,等待1000毫秒後,什麼都沒有發生。此代碼等待無限時間。我猜ClientProperties.CONNECT_TIMEOUT
和ClientProperties.READ_TIMEOUT
不適合WildFly。可能我必須使用其他常量。有誰知道這是什麼問題?
謝謝你的答案。我是否必須重寫整個代碼(針對http請求)並更改由於ClientProperties常量而導致的依賴關係? (儘管http請求被正確執行)。看起來有點奇怪:( –
好吧,你正在利用impl的特定行爲,我通常創建一個製作方法並以這種方式連接到客戶端,這樣它只觸及一個點。 –