我正在使用 org.springframework.ws.client.core.WebServiceTemplate 。如何为调用配置超时。
I am using org.springframework.ws.client.core.WebServiceTemplate for making Web Service calls. How can i configure timeout for the call.
推荐答案如果您使用的是Spring Webservices 2.1.0版本,则可以使用设置超时 HttpComponentsMessageSender 。
If you are using Spring Webservices 2.1.0 version, You can set timeout using HttpComponentsMessageSender.
CommonsHttpMessageSender 已被弃用,不再被Spring推荐。
CommonsHttpMessageSender are deprecated and not recommended by Spring anymore.
我实现它的方式,我定义我的WebServiceTemplate使用HttpComponentsMessageSender。
The way I have it implemented, I define my WebServiceTemplate to use HttpComponentsMessageSender.
值以毫秒为单位
<bean id="webServiceTemplate" class="org.springframework.ws.client.core.WebServiceTemplate"> <property name="defaultUri" value="${endpoint.url}" /> <property name="marshaller" ref="marshaller" /> <property name="unmarshaller" ref="unmarshaller" /> <property name="messageSender"> <bean class="org.springframework.ws.transport.http.HttpComponentsMessageSender"> <property name="connectionTimeout" value="1200000" /> <property name="readTimeout" value="1200000" /> </bean> </property> </bean>只需确保您的pom文件中添加了以下内容
Just Make sure you have in your pom file, you added the following
<dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpclient</artifactId> <version>4.2.1</version> <scope>compile</scope> </dependency>更多推荐
如何在Spring WebServiceTemplate中设置超时
发布评论