Spring integration 路由到通道配置
我想通过电子邮件发送消息 'startChannel->router1->outChannel' 如果我注释掉'config-2.xml'内容,它就会像我预期的那样工作 当我启用“config-2.xml”内容时,我希望它可以通过 'startChannel->router1->routerChannel->router2->outChannel' 但我有以下例外 EL1008E:(位置0):在上找不到属性或字段“routerChannel” 类型的对象 “org.springframework.integration.message.GenericMessage”-可能不是 公众 如何将邮件路由到“routerChannel” config-1.xmlSpring integration 路由到通道配置,spring-integration,Spring Integration,我想通过电子邮件发送消息 'startChannel->router1->outChannel' 如果我注释掉'config-2.xml'内容,它就会像我预期的那样工作 当我启用“config-2.xml”内容时,我希望它可以通过 'startChannel->router1->routerChannel->router2->outChannel' 但我有以下例外 EL1008E:(位置0):在上找不到属性或字段“routerChannel” 类型的对象 “org.springframework
<int:channel id="startChannel"/>
<int:router id="router1"
input-channel="startChannel"
default-output-channel="outChannel"
resolution-required="false"
expression="routerChannel"/>
<int:channel id="outChannel"/>
config-2.xml
<int:channel id="routerChannel"/>
<int:router id="router2"
input-channel="routerChannel"
resolution-required="true"
expression="payload.paymentType">
<int:mapping value="CASH" channel="cashPaymentChannel"/>
<int:mapping value="CREDIT" channel="authorizePaymentChannel"/>
<int:mapping value="DEBIT" channel="authorizePaymentChannel"/>
</int:router>
将计算路由器中的表达式,结果应为字符串(单通道)或字符串集合(多通道)。在您的用例中,路由器表达式在config1.xml中没有意义。如果是直接通道值,则此处不使用路由器。将计算路由器中的表达式,结果应为字符串(单通道)或字符串集合(多通道)。在您的用例中,路由器表达式在config1.xml中没有意义。如果是直接通道值,则此处不使用路由器。您的SpEL必须如下所示:
expression="@routerChannel"/>
因为它是运行时表达式,所以我们必须遵守它的bean引用协议 您的SpEL必须是这样的:
expression="@routerChannel"/>
因为它是运行时表达式,所以我们必须遵守它的bean引用协议 请添加更多信息。比如:“我希望它能像这样工作,但我得到了这个例外。”等等。你说“不存在”是什么意思还不清楚。可选配置?如果您真的知道如何
该xml,它将如何工作?请添加更多信息。比如:“我希望它能像这样工作,但我得到了这个例外。”等等。你说“不存在”是什么意思还不清楚。可选配置?如果您真的知道如何
该xml,那么它将如何工作?请参阅我的答案。即使它看起来很奇怪,我相信可能有一些用例可以这样做。为了简单起见,我希望表达式逻辑比本主题中的复杂得多。请参阅我的答案。即使它看起来很奇怪,我相信可能有一些用例可以这样做。为了简单起见,我希望表达式逻辑比本主题中的复杂得多。