elias
elias

Reputation: 15480

Set timeout for callout mediator

I'm using WSO2 ESB 4.6.0 and in a specific moment, need to make a blocking call to an external web service. For that, I'm using the callout mediator:

<callout serviceURL="http://localhost:9773/services/OrderService" action="urn:mediate">
    <source xmlns:s11="http://schemas.xmlsoap.org/soap/envelope/" xpath="s11:Body/child::*[fn:position()=1]"/>
    <target xmlns:s11="http://schemas.xmlsoap.org/soap/envelope/" xpath="s11:Body/child::*[fn:position()=1]"/>
</callout>

The problem is, sometimes, this service may take about 100 seconds to complete and respond, but the callout throws an timeout error in 30 seconds.

What I want to know is: How to increase this timeout?

EDIT

Changing synapse.global_timeout_interval to 120000 has no effect to callout mediator. The timeout keep occurring in 30 seconds.

Upvotes: 1

Views: 1211

Answers (1)

Dakshika
Dakshika

Reputation: 1714

when you set value to a value greater than 120 seconds we need to edit 'synapse.global_timeout_interval' value in synapse.properties file located in repository/conf/

or you can set timeout for end point as wel

<timeout> 
               <duration>1000</duration> 
               <responseAction>discard</responseAction> 
</timeout>

for more details: https://docs.wso2.org/display/ESB481/Endpoint+Error+Handling

Upvotes: 1

Related Questions