<chain input-channel="afiHeadToHeaderChannel" output-channel="simResMsgOutBoundChannel">
<transformer ref="afiHeadToHeaderTransform" />
**<transformer ref="fixedToMapTransform"**
<transformer ref="simReqResTransform" />
<transformer ref="mapToFixedTransform" />
<transformer ref="headerToAfiHeadTransform" />
</chain>
执行转换器"fixedToMapTransform"后,我想使用消息进行记录。我该如何解决这个问题?
没有Spring Integration-"本机"方法可以做到这一点(正如Gary指出的那样),但您可以编写自己的日志记录激活器。
<chain input-channel="afiHeadToHeaderChannel" output-channel="simResMsgOutBoundChannel">
<transformer ref="afiHeadToHeaderTransform" />
<transformer ref="fixedToMapTransform"/>
<service-activator ref="loggingActivator" method="handleMessage" />
<transformer ref="simReqResTransform" />
<transformer ref="mapToFixedTransform" />
<transformer ref="headerToAfiHeadTransform" />
</chain>
<beans:bean id="loggingActivator" class="com.mycompany.LoggingActivator" />
和激活器代码:
public class LoggingActivator {
private static final Log LOG = LogFactory.getLog(LoggingActivator.class);
public Message< ? > handleMessage(final Message< ? > message) {
LOG.debug(message);
return message;
}
}
你不能;链中的端点与匿名通道连接。您必须将链一分为二,第一个的输出通道是第二个的输入通道;然后,您可以窃听该频道。
链条是一个"黑匣子"。