Hi
> When network breakdown(or axisServer shutdown),  
> org.apache.synapse.transport.nhttp.ClientHandler's corresponding callback 
> handler is invoked (onClose(), or onException(),...) . and the callback only 
> just shutdown the connection.
>
> But the sessionRequestCallback(HttpCoreNIOSender.sessionRequestCallback) 
> registed when establish http connection(ioreactor.connect(...)) will never be 
> called. so the failure response will not be generated and send back to 
> axisClient.
>   
Can you raise an issue on the JIRA so one of us can take a proper look
and ensure that we detect network disconnections and timeouts correctly
> And is there any other things could I do to avoid this situation?
>   
You can use the timeout property for endpoints
(http://synapse.apache.org/Synapse_Configuration_Language.html#address-endpoint)
to overcome this
/" Address endpoints can timeout if responses fail to arrive at Synapse
by a predefined timeout-duration specified in seconds. The timeout
action specifies whether to discard responses that arrives late, or to
trigger a fault. Synapse has a periodic timeout handler that triggers
itself at each 15 second interval. Thus endpoint timeouts will have a
+/- error on actual trigger time. Though this can be minimized by
setting a System property "synapse.timeout_handler_interval" to a
millisecond duration below the desired endpoint timeout, care must be
taken as a lesser value may have a higher overhead on the system."/


asankha

Reply via email to