对于最新的稳定版本,请使用 Spring Integration 6.4.0! |
入站消息转换
到达通道适配器或网关的入站消息将使用消息转换器转换为有效负载。
默认情况下,使用 a 来处理 java 序列化和文本。
默认情况下,标头使用 进行映射。
如果发生转换错误,并且没有定义错误通道,则异常将抛出到容器中,并由侦听器容器的错误处理程序处理。
默认错误处理程序将 conversion 错误视为致命错误,并且消息将被拒绝(并路由到死信交换,如果队列是这样配置的)。
如果定义了错误通道,则有效负载是具有属性的 (无法转换的 Spring AMQP 消息) 和 .
如果容器是(默认)并且错误流使用错误而不引发异常,则将确认原始消息。
如果错误流引发异常,则异常类型将与容器的错误处理程序一起确定是否将消息重新排队。
如果容器配置了 ,则有效负载是具有附加属性 和 的 。
这使错误流能够为消息调用 OR(或 )以控制其处置。spring-messaging
Message<?>
SimpleMessageConverter
DefaultHeaderMapper.inboundMapper()
ErrorMessage
ListenerExecutionFailedException
failedMessage
cause
AcknowledgeMode
AUTO
AcknowledgeMode.MANUAL
ManualAckListenerExecutionFailedException
channel
deliveryTag
basicAck
basicNack
basicReject