我们最近将我们的Application Server从Glassfish更改为Wildfly。对于Glassfish,我们使用QBrowser来监控我们的JMS队列,可悲的是这个工具不适用于Wildfly。将HermesJMS连接到Wildfly 8.2
快速搜索后,我找到了Tool HermesJMS。虽然有很多指导如何建立与JMS队列的连接,但我无法直接为JBoss Wildfly应用服务器找到任何东西。在通过不同的指南阅读大量内容之后,我想我现在可以连接到野蛮服务器,但是我不能连接到我的jms队列。
首先我尝试通过JNDI InitialContext进行连接。 Here's我为它设置:
的InitialContextFactory:org.jboss.naming.remote.client.InitialContextFactory providerURL:HTTP的远程://本地主机: urlPkgPrefixes:org.jboss.naming.remote.client securityPrincipal :admin securityCredentials:admin
它确实连接,但我看到的都是我部署的Web应用程序和“jms”文件夹。但它们都包含相同的Web应用程序再加上jms文件夹,并显示为带有白色X的红色圆圈。
所以下次我试图手动建立会话通过 “创建新的JMS会话” 具有以下优惠:
会议:HornetQ的 插件:HornetQ的 属性:
绑定:JMS/RemoteConnectionFactory 的InitialContextFactory :的InitialContextFactory:org.jboss.naming.remote.client.InitialContextFactory providerURL:HTTP的远程处理://本地主机: urlPkgPrefixes:org.jboss.naming.remote.client
用户:guest密码:通过
guest用户是我在Wildfly创建为应用程序的用户
的用户当我在上面说,有没有这样的队列的一个队列,然后双击。
javax.jms.JMSException: There is no queue with name java:jboss/jms/queue/ngsEmailProvRequestQueue
at org.hornetq.jms.client.HornetQSession.createQueue(HornetQSession.java:397)
at hermes.impl.jms.SimpleDestinationManager.createDesintaion(SimpleDestinationManager.java:60)
at hermes.impl.JNDIDestinationManager.createDesintaion(JNDIDestinationManager.java:105)
at hermes.impl.jms.SimpleDestinationManager.getDestination(SimpleDestinationManager.java:137)
at hermes.impl.jms.AbstractSessionManager.getDestination(AbstractSessionManager.java:387)
at hermes.impl.DefaultHermesImpl.getDestination(DefaultHermesImpl.java:323)
at hermes.browser.tasks.BrowseDestinationTask.invoke(BrowseDestinationTask.java:122)
at hermes.browser.tasks.TaskSupport.run(TaskSupport.java:175)
at hermes.browser.tasks.ThreadPool.run(ThreadPool.java:170)
at java.lang.Thread.run(Thread.java:745)
有人知道我错过了什么吗?甚至有可能让HermesJms与Wildfly一起工作?如果不是的话,那么JMS队列有一个替代的监控工具吗?
谢谢你的帮助。
顺便说一句,在wildfly v10 ++中,在redhat 7中存在依赖关系。因为它的glibc版本较旧,所以redhat 6将不起作用。希望它有助于那些迁移到redhat和wildfly的人 – erickyi2006 2018-01-08 05:59:28