Spring 集成消息驱动的通道适配器刷新范围
Spring Integration Message Driven channel adapter Refresh Scope
我的应用程序正在使用 Spring 云,刷新范围用于在配置更改时动态刷新某些 bean。我怎样才能使相同的行为也适用于 Jms 消息侦听器。
下面是 Spring 集成中定义的消息侦听器。我如何定义这个 bean 以在配置更改时刷新。在这种情况下,我使用最大并发消费者和自动启动属性从 properties
加载
<jms:message-driven-channel-adapter
id="processMessageDrivenChannelAdapter" send-timeout="5000"
max-messages-per-task="-1"
idle-task-execution-limit="100"
max-concurrent-consumers="${consumers}"
connection-factory="messageConnectionFactory"
destination="jmsQueue" channel="messageProcessChannel"
acknowledge="transacted" auto-startup="${autoStartUp}" />
@RefreshScope
不支持 "active" 个 bean;例如那些实施 SmartLifecycle
需要对其生命周期进行管理的(started/stopped 等)。
仅支持在刷新后才获得新属性的被动 bean。
您必须监听刷新事件并手动 stop/reconfigure/start 适配器。
我的应用程序正在使用 Spring 云,刷新范围用于在配置更改时动态刷新某些 bean。我怎样才能使相同的行为也适用于 Jms 消息侦听器。 下面是 Spring 集成中定义的消息侦听器。我如何定义这个 bean 以在配置更改时刷新。在这种情况下,我使用最大并发消费者和自动启动属性从 properties
加载<jms:message-driven-channel-adapter
id="processMessageDrivenChannelAdapter" send-timeout="5000"
max-messages-per-task="-1"
idle-task-execution-limit="100"
max-concurrent-consumers="${consumers}"
connection-factory="messageConnectionFactory"
destination="jmsQueue" channel="messageProcessChannel"
acknowledge="transacted" auto-startup="${autoStartUp}" />
@RefreshScope
不支持 "active" 个 bean;例如那些实施 SmartLifecycle
需要对其生命周期进行管理的(started/stopped 等)。
仅支持在刷新后才获得新属性的被动 bean。
您必须监听刷新事件并手动 stop/reconfigure/start 适配器。