我有以下bean的Spring集成XML配置
<int-ip:tcp-outbound-channel-adapter id="outboundClient"
channel="input"
connection-factory="client"/>
我认为java配置中的等价物是
@ServiceActivator(inputChannel = "input", requiresReply = "true")
public TcpSendingMessageHandler outboundClient() {
TcpSendingMessageHandler tcpSendingMessageHandler = new TcpSendingMessageHandler();
tcpSendingMessageHandler.setConnectionFactory(clientConnectionFactory());
tcpSendingMessageHandler.setRetryInterval(10000);
tcpSendingMessageHandler.setClientMode(true);
return tcpSendingMessageHandler;
}
但是,在日志中,我看到了
TcpListener exiting - no listener and not single use
我无法收到服务器的回复。
感谢任何帮助
答案 0 :(得分:3)
TcpSendingMessageHandler
用于单向用法 - 仅用于向TCP套接字发送消息。
所以,你的配置看起来很好,对我来说它应该有效。
退出TcpListener - 没有监听器而不是单独使用
仅来自DEBUG
的{{1}}消息,表明您的组件为TcpNetConnection
。
因此,您无法从服务器收到回复是正常的。因为你只向那里发送消息。
让[{1}}个方案考虑使用TcpOutboundGateway
。