Saya ingin menyetel waktu tunggu koneksi untuk layanan istirahat yang digunakan oleh aplikasi web saya. Saya menggunakan Spring's RestTemplate untuk berbicara dengan layanan saya. Saya telah melakukan beberapa penelitian dan saya telah menemukan dan menggunakan xml di bawah ini (dalam aplikasi saya xml) yang saya yakini dimaksudkan untuk menyetel batas waktu. Saya menggunakan Spring 3.0.
Saya juga melihat masalah yang sama di sini Konfigurasi waktu tunggu untuk layanan web musim semi dengan RestTemplate tetapi solusinya tampaknya tidak bersih , saya lebih suka mengatur nilai batas waktu melalui konfigurasi Spring
<bean id="RestOperations" class="org.springframework.web.client.RestTemplate">
<constructor-arg>
<bean class="org.springframework.http.client.CommonsClientHttpRequestFactory">
<property name="readTimeout" value="${restURL.connectionTimeout}" />
</bean>
</constructor-arg>
</bean>
Tampaknya apa pun yang saya atur readTimeout menjadi saya mendapatkan yang berikut:
Kabel jaringan terputus: Menunggu sekitar 20 detik dan melaporkan pengecualian berikut:
org.springframework.web.client.ResourceAccessExcep tion: Kesalahan I / O: Tidak ada rute ke host: hubungkan; pengecualian bersarang adalah java.net.NoRouteToHostException: Tidak ada rute ke host: sambungkan
Url salah jadi 404 dikembalikan oleh layanan istirahat: Menunggu sekitar 10 detik dan melaporkan pengecualian berikut:
org.springframework.web.client.HttpClientErrorException: 404 Tidak Ditemukan
Persyaratan saya memerlukan waktu tunggu yang lebih singkat, jadi saya harus dapat mengubahnya. Ada ide tentang apa yang saya lakukan salah?
Terimakasih banyak.
new
pernyataan ganjil dalamSpring Boot
contoh