【问题标题】:Embed ActiveMQ into JBoss 7将 ActiveMQ 嵌入 JBoss 7
【发布时间】:2011-12-05 08:04:00
【问题描述】:

我们曾经在 JBoss 5 中使用 ActiveMQ 5.5 作为嵌入式服务(通过 ActiveMQ 资源适配器),因此 JMS 代理一直运行在本地主机上与客户端应用程序本身相同的 JVM。我们按照此说明进行配置 - http://activemq.apache.org/integrating-apache-activemq-with-jboss.html

现在我正在尝试为 JBoss 7 做同样的事情,但找不到任何明确的指导。

有人做过吗?您能否指出将 ActiveMQ 集成到 JBoss 7 中的具体步骤的指南?

谢谢。

【问题讨论】:

  • 我也有同样的问题。我以同样的方式部署了资源适配器,更新了standalone.xml 以添加资源适配器,但我无法部署我的MDB。它缺少对 RA 服务的依赖。有人有想法吗?
  • 这里有同样的问题。没有好的向导。

标签: integration activemq jboss7.x


【解决方案1】:

可以在 Wildfly 的 JVM 中启动 JMS 代理,因此无需设置不同的 ActiveMQ 服务器。

我所做的只是更改standalone.xml 中的传输协议

发件人:

tcp://localhost:61616?jms.rmIdFromConnectionId=true

收件人:

vm://localhost?broker.persistent=false

将持久性设置为 false 以避免持久性配置很重要。另外,也可以通过参数 brokerConfig=xbean:activemq.xml 来设置 ActiveMQ 配置文件 监控 JMS 队列

现在 ActiveMQ 控制台已关闭,您可能想知道如何检查队列。您可以通过连接到 Wildfly JVM 的 JMX 环境来实现。

你有两个选择:

-使用 ActiveMQ Web 控制台 - 使用 JConsole

  1. 使用 ActiveMQ Web 控制台

要在 Wildfly 中启用 ActiveMQ 控制台,只需两个步骤:

在standalone.xml中设置JVM系统参数,通知ActiveMQ控制台应用程序通过JMX连接。在 extensions 标签下添加以下 JVM 系统参数:

部署 ActiveMQ 控制台战争。这场战争包含 jboss-client.jar(在 /lib 下)。

ActiveMQ 应该在此 WildFly 上下文下运行

http://localhost:8080/activemq-web-console-5.11.1/

  1. 使用 JConsole

只需通过将jar jboss-cli-client.jar 添加到其类路径中来使用JConsole。我添加了 bat 文件以在 Windows 上运行 jconsole。只需设置 JAVA_HOME 和 JBOSS_JAR。

设置 JAVA_HOME=

设置 JBOSS_JAR=

%JAVA_HOME%\bin\jconsole -J-Djava.class.path=%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\jconsole.jar;%JBOSS_JAR%\jboss-cli-client.jar "

在 JConsole 中的新连接上,选择远程进程。设置值为:

服务:jmx:http-remoting-jmx://localhost:9990

用户名:你的管理员用户名

密码 : your_admin_password

会出现几个标签。

转到MBeans选项卡,org.apache.activeMQ子树将出现在左侧。

如需进一步参考,请参阅:

http://javagoogleappspot.blogspot.be/2015/12/embed-your-activemq-broker-within-your.html

【讨论】:

    【解决方案2】:

    我必须升级到 ActiveMQ 5.6

    【讨论】:

      猜你喜欢
      • 2011-03-18
      • 2013-02-08
      • 2022-08-10
      • 2021-05-07
      • 1970-01-01
      • 1970-01-01
      • 2019-03-08
      • 2012-12-30
      • 2011-03-21
      相关资源
      最近更新 更多