如何从Mule TcpConnector获取Socket对象

时间:2012-11-05 09:47:30

标签: mule

我希望在持久tcp连接(SendSocketOpen设置为true)期间出现异常后关闭套接字。目前我相信Mule不会为我清理它,它只是释放套接字,这意味着它将它返回到池中。

1 个答案:

答案 0 :(得分:2)

对于记录,除非您在连接器或端点上将keepSendSocketOpen(不是SendSocketOpen)设置为true,否则Mule将在将套接字池返回时关闭套接字。如果强行关闭套接字,Mule应该恢复,因为它在从池中取出套接字时验证套接字。所以Mule应该检测到它已被关闭并重新创建它。

问题确实是要抓住套接字:AFAICS唯一的选择是扩展org.mule.transport.tcp.TcpMessageDispatcher并使用service-overrides子元素配置连接器,该元素提供构建的TcpMessageDispatcherFactory你自己的调度员的味道。