根据Spring引用documentation,使用layoutIfNeeded()
注释并具有非@JmsListener
返回类型的方法将调用的结果封装在void
中并发送或者在原始邮件的javax.jms.Message
标头中指定的目标中,或者在侦听器上配置的默认目标中。
如果找不到目的地,则会抛出JMSReplyTo
。
有没有办法禁用自动回复的这种行为?
编辑
我正在使用InvalidDestinationException
建议来记录执行结果,这就是为什么我需要在我的监听器上有一个返回类型。
答案 0 :(得分:1)
如果方法具有返回类型,则从方法返回null
将禁用回复处理。
您可以通过向方法添加@Header
参数来检测replyTo的存在(或不存在)。
或者,如果没有标题,请添加@SendTo
以及要使用的目的地。
修改强>
由于您使用建议来记录返回值,因此您只需从建议中返回null
,而不是invocation.proceed()
的结果。