我正在使用通道适配器(不是网关)将数据从Spring集成服务器与messagingtemplate的sendAndReceive一起发送到连接的非弹簧客户端(或者只是telnet)。
在客户端接收到数据后,有时我想将数据回复到服务器并解决发送和接收等待的问题。我仍然希望能够向服务器发送其他数据。
发送和接收如何检测响应?现在我可以向服务器发送任何我想发送的内容,它将假定它是一个新的传入消息。
是否有一种预定义的方法,比如预先固定一个messageid,或者我必须通过解释传入的消息并以某种方式“解析”sendAndReceive拦截器来手动实现它?
最佳答案
MessagingTemplate.sendAndReceive
是基于放置在TemporaryReplyChannel
上的MessageHeaders
而随后一些AbstractReplyProducingMessageHandler
只使用该头发送回复。
是的,发送线程会被阻塞,以便在整个TemporaryReplyChannel
过程中等待答复。
希望能对你有所帮助。
你对TCP/IP的所有其他评论我还不清楚…
关于java - 如何从普通的TCP客户端响应到MessagingTemplate的sendAndReceive,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30731322/