我需要在OpenEJB中以“暂停”状态启动队列,因此在某些相关数据可用之前,消费者不会处理任何消息。我可以编程方式暂停队列,如图所示here,所以如果在创建队列时调用了一些初始化函数,我可以使用该方法。队列配置documentation似乎不支持设置暂停状态。关于如何在创建时配置队列的任何想法?
答案 0 :(得分:0)
如果您阅读了您链接的主题,您将看到一个队列没有暂停但是经纪人可以。
在TomEE中,使用spi从工厂创建代理(默认情况下为tomee类加载器,所以tomee / lib),这样你就可以编写自己的代码了,如果这是一个在你准备就绪时以编程方式启动的选项。
现在我怀疑你不想用容器启动连接器,但启动代理不是问题。否则你不希望通过JMS连接到任何其他机器而不接收任何东西,但是如果启动和部署JMS就没问题。
在这种情况下,您可以不在代理上配置任何连接器并在准备好时添加它们。您可以找到经纪人:
new org.apache.openejb.resource.activemq.ActiveMQ5Factory().getBrokers()