我在使用 Ubuntu 18.04 的本地虚拟机上新安装了 ActiveMQ Artemis。我正在尝试使用名为QueueExplorer的 JMS 客户端连接到它。
Cannot read queues from machine 192.168.1.13/ (ActiveMQ).
StackTrace: Cogin.ActiveMQ.AMQException: Could not connect to ActiveMQ: Unable to connect to the remote server
at Cogin.ActiveMQ.Internal.JolokiaConnection.SendJsonRequest(String uriString, JToken requestJson)
at Cogin.ActiveMQ.Internal.JolokiaConnection.RequestBrokerName()
at Cogin.ActiveMQ.Internal.JolokiaRequest.GetMBeanObject(AMQMachineItem machine)
at Cogin.ActiveMQ.Internal.JolokiaConnection.Execute(JolokiaRequest request)
at Cogin.ActiveMQ.Internal.AMQBrokerProxy.GetBrokerInfo(IWorker worker)
at Cogin.ActiveMQ.Services.AMQBrokerService.GetQueuesTree(IWorker worker, Boolean showNonWritableQueues)
at a8.a.e(IWorker A_0)
at System.Threading.Tasks.Task.Execute()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at ab.a.e()
Version: QueueExplorer Standard 4.3.15.26129 .Net Framework Version: 4.8.0 OS: Windows 10
我可以成功ping系统。防火墙未启用,我可以访问 Web 控制台。我按照本指南进行设置,但我想我错过了一些东西。QueueExplorer 需要 Jolokia 和 OpenWire。Web 控制台使用 Jolokia,但 QueueExplorer 中的错误抱怨它。
使用 QueueExplorer 连接到 ActiveMQ 时,我不需要进行任何配置更改。Artemis 中是否有其他步骤来允许客户端连接?
由于 QueueExplorer 是闭源软件,因此无法 100% 肯定地说出问题所在。但是,我可以肯定地说,ActiveMQ Artemis确实支持 OpenWire,并且它与 Jolokia 一起提供以通过 HTTP 公开其管理 bean(即 MBean)。
我相信问题在于 QueueExplorer 希望在 ActiveMQ Artemis 中找到与 ActiveMQ 5.x 相同的 MBean,但事实并非如此。虽然 ActiveMQ Artemis 支持许多与 ActiveMQ 5.x 相同的特性和功能,但它是一个根本不同的架构,旨在提供更高级别的性能和协议/API 不可知寻址模型。
我相信这里唯一的解决方案是让 QueueExplorer 的作者更新它以与 ActiveMQ Artemis MBeans 一起使用。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句