【问题标题】:getting the DefaultMessageListenerContainer from within the listener从侦听器中获取 DefaultMessageListenerContainer
【发布时间】:2017-08-31 04:43:51
【问题描述】:

我有以下配置:

<jms:listener-container container-type="default" connection-factory="cachedConnectionFactory" acknowledge="auto">
     <jms:listener id="myListenerContainerId" destination="myDestination" ref="myListener" method="onMessage" />
</jms:listener-container>

<bean id="myListenerId" class="X.Y.Z.myListener">
    // Some attributes
</bean>

还有以下监听器:

public class myListener implements MessageListener {

@Override
public void onMessage(Message message) {
    // Some work
    } 
}

有没有办法从我的监听器中获取 DefaultMessageListenerContainer myListenerContainerId

为了澄清我的需求,无论myListenerId 是否正在运行、是否处于活动状态,都会触发侦听器onMessage。我需要检查它是否仅由myListenerContainerId 触发。

【问题讨论】:

    标签: java spring queue jms spring-jms


    【解决方案1】:

    没有;但是如果你添加new RuntimeException().printStackTrace(),你可以看到它是从哪里调用的。

    或者您可以检查线程名称(默认情况下,其中包含 DefaultMessageListenerContainer)。

    【讨论】:

    • 太好了,谢谢 :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-03-03
    • 1970-01-01
    • 1970-01-01
    • 2013-12-07
    • 1970-01-01
    • 2015-11-25
    • 1970-01-01
    相关资源
    最近更新 更多