недавно мы изменили наш сервер приложений с Glassfish на Wildfly. В Glassfish мы использовали QBrowser для мониторинга наших очередей JMS, к сожалению, этот инструмент не работает с Wildfly.
После быстрого поиска я нашел инструмент HermesJMS. Хотя существует множество руководств по настройке подключения к очереди JMS, я не смог найти ничего непосредственно для сервера приложений JBoss Wildfly. После большого количества чтения различных руководств я думаю, что теперь могу подключиться к серверу wildfly, но я просто не могу подключиться к своим очередям jms.
Сначала я попытался подключиться через JNDI InitialContext. Вот мои настройки для него:
InitialContextFactory: org.jboss.naming.remote.client.InitialContextFactory providerURL: http-remoting://localhost: urlPkgPrefixes: org.jboss.naming.remote.client securityPrincipal: admin securityCredentials: admin
Он подключается, но все, что я вижу, это мои развернутые веб-приложения и папка «jms». Но все они снова содержат одни и те же веб-приложения плюс папку jms и отображаются в виде красного кружка с белым крестиком внутри него.
Затем я попытался настроить сеанс вручную с помощью «Создать новый сеанс JMS» со следующими настройками:
Сессия: Плагин HornetQ: Свойства HornetQ:
привязка: jms/RemoteConnectionFactory initialContextFactory: initialContextFactory: org.jboss.naming.remote.client.InitialContextFactory providerURL: http-remoting://localhost: urlPkgPrefixes: org.jboss.naming.remote.client
Пользователь: гость Пароль: пройти
Гость — это пользователь, которого я создал в 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?
Спасибо за помощь.