我通常会收到有关 STS 中未定义 nullChannel 的警告 Problems
查看:
Referenced bean 'nullChannel' not found
但是如果我在上下文文件中添加声明,例如 <int:channel id="nullChannel" />
或<int:publish-subscribe-channel id="nullChannel">
,我得到一个:
java.lang.IllegalStateException: The bean name 'nullChannel' is reserved.
我想这是一个我可以安全忽略的警告,但我通常会尝试将警告归零,那么我是否遗漏了一些东西?
<小时/>更新
这些是与警告相关的部分,删除它们会使警告消失:
<int:header-value-router input-channel="listOfMaps" header-name="transaction_type" resolution-required="false" default-output-channel="nullChannel">
<int:mapping value="52" channel="requests52ListOfMaps"/>
</int:header-value-router>
<int:service-activator input-channel="httpRequestsSendsChannel" output-channel="nullChannel" ref="conversionController" method="enable52Delivery" />
<int:service-activator input-channel="httpRequestsDeletesChannel" output-channel="nullChannel" ref="inspector" method="inspect" />
最佳答案
我不确定为什么上周对我来说没问题(可能是飞行员错误),但我现在明白了
<int:service-activator input-channel="errorChannel" output-channel="nullChannel" expression="foo" />
并且,如果我翻转输入/输出 channel ,警告将更改为 errorChannel
- 我们没有收到输入 channel 警告的原因是因为 STS 大概知道我们将创建输入如果需要,可以动态 channel 。
我猜 STS 只是不知道这些隐式 bean。
我会询问 STS 人员是否可以想出一种方法,为他们提供隐式 bean 列表来抑制这些警告。
如果不可能,我们可以考虑放宽禁止添加自定义 nullChannel
bean 的规则。
关于java - 为什么我会收到 Referenced bean nullChannel not found?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50374406/