我們最近將我們的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