我使用TcpInboundGateway
中的spring-integration
作为socket
客户。
在TcpInboundGateway.doOnMessage()
中,流通过套接字连接发送。如果发生异常,例如因为套接字已关闭,则只有弹出错误日志"Failed to send reply"
。
但我想明确处理这些套接字错误。我怎么能在所需的课程中发现这些错误?
答案 0 :(得分:2)
我们应该改变它来传播异常,但这会改变行为,所以我们可能只需要在4.2中进行,除非我们选择它。 < / p>
实际上,经过进一步审查;这不能容纳 - 您必须通过connection exception event来处理异常。
发送是在入站线程上执行的,而不是您的发送线程。
我们可以增强异常事件以包含失败的出站消息。
修改强>:
或者,使用一对collaborating channel adapters代替入站网关。
这样,发送将在发送回复的线程上执行,您可以捕获异常。