如何从(GlassFish)服务器

时间:2017-08-02 21:12:17

标签: glassfish jms

我的Glassfish服务器已启动并运行,我可以运行简单的JMS客户端程序,这些程序可以发送和检索消息到手动在Glassfish控制台中配置的队列和主题。

我正在忙着编写一个简单的JMSBrowser来研究JMS,并希望了解如何从java客户端检索被管理对象Server对象的名称(ConnectionFactory,Queues& Topics)。

例如,我的ConnectionFactory具有JNDI名称jms / __ defaultConnectionFactory,Queue jms / GlassFishBookQueue和主题jms / GlassFishBookTopic。

当我只知道资源类型(javax.jms.ConnectionFactory,javax.jms.Queue和javax.jms.Topic)时,如何检索这些名称

在这个例子中,我有各种各样的,但每个都可以是一个列表。

花了很多时间试图搞清楚,但无济于事。

应该可以像任何JMSBrowser一样提供这些信息,例如这个屏幕截图:

https://sourceforge.net/projects/jmstoolbox/

任何暗示都会受到赞赏。

1 个答案:

答案 0 :(得分:1)

我是JMSToolBox的作者 JMS规范没有定义一种方法来使用服务器中定义的JMS工件,即创建/删除/列表。问题/主题/工厂等。 每个队列管理器都有自己专有的方式来公开这些功能。在JMSToolBox中,我通常使用JMX(在专有MBean的帮助下......),但有时它是连接和列出这些对象的专有代码。 如果您通过JNDI连接到队列管理器服务器,可能有一种方法可以列出JNDI树中的所有JMS假象,并根据某些专有模式确定它们所代表的对象的“种类”(Queue,ConnectionFactory等等)。 )

BTW,GlassFish嵌入了OpenMQ。 Here is the way it is done in JMSToolBox

我希望这会有所帮助