访问外部Web服务时响响应超时

时间:2018-06-27 13:57:12

标签: java web-services configuration mule mule-esb

我使用的是Mule 3.5.0版,其配置在xml中指定。

我有几个流程,它们除了调用外部Web服务,添加一些安全性(2-way SSL)和编写一些审核日志外无所不用其事:

<flow name="testFlow" processingStrategy="synchronous">
    <servlet:inbound-endpoint path="/TestService/serviceA" responseTimeout="0" />
    <object-to-string-transformer />
    <component>
        <spring-object bean="serviceAContextEnricher"/>
    </component>
    <component>
        <spring-object bean="auditLogger"/>
    </component>
    <https:outbound-endpoint exchange-pattern="request-response" address="${serviceA.service.url}" contentType="text/xml" method="POST" connector-ref="httpsClientConnector"/>
    <component>
        <spring-object bean="auditUpdateLogger"/>
    </component>
</flow> 

现在,我注意到我们有一些外部Web服务调用,这些调用花费的时间超过了10000毫秒(默认超时)。 现在我想知道在哪里指定此超时时间:

第一个选择是我添加一个全局配置参数:

<configuration defaultResponseTimeout="0"/>

如上例所示,我可以将responseTimeout =“ 0”添加到servlet:inbound-endpoint。

或者我可以将responseTimeout =“ 0”添加到https:outbound-endpoint元素。

我想知道必须选择哪种选项(或选项组合)以使应用程序在所有情况下都能正常工作。

0 个答案:

没有答案