获取JMS的带注释方法端点

时间:2016-05-28 10:43:44

标签: spring jms spring-jms spring-annotations

有什么方法可以通过注释找到所有已配置的MethodJmsListenerEndpoint吗?

我想用不同的消息监听器容器注册所有这些端点。

@JmsListener(destination = "TestQueue")
public void process(String msg) {
    System.out.println(msg);
}

//TODO for all connections
foreach(connections){
 //TODO get all  annotated endpoints as prototype
    foreach(endpoint){
      MethodJmsListenerEndpoint processEndpoint = endpoint;
      registrar.registerEndpoint(processEndpoint,containerFactory(connection));
    }   
  }

1 个答案:

答案 0 :(得分:1)

取决于您的提供程序,您可以使用配置定制程序bean(如HornetQConfigurationCustomizer)在此Bean初始化期间操作任何设置。

如果您的配置在运行时应该是真正的过继性和可管理性,那么您根本不应该使用@JmsListener注释。只需在代码中注册它们,如Spring建议:JMS