哪里可以找到HornetQ中的消息

时间:2015-09-14 07:46:36

标签: jms hornetq

我写了一个简单的应用程序,它发送消息并在同一个应用程序中接收它。现在我想知道的是我在哪里可以找到HornetQ中发送的所有消息?

1 个答案:

答案 0 :(得分:2)

您可以通过两种方式检查传递给HornetQ的消息。

方法1:   最简单方便,使用JConsole,从JDK目录打开JConsole并从本地进程中选择hornetQ进程(我假设你在本地机器上有hornetq,你需要启用远程JMX)并选择connect并转到MBans,如下图所示。并选择org.hornetq -> Queue -> JMS -> Your Queue -> Attributes。两个参数消息计数和添加的消息指示JMS消息状态(请注意,此处无法读取消息)

enter image description here

方法2: Hermes JMS,下载Hermes JMS(如果您使用的是Windows 7从here下载1.15版本)。通过执行jar安装HermesJMS。一旦HermesJMS安装在bin目录中执行hermes.bat(如果它没有启动,则需要编辑批处理文件hermes.bat并在set HERMES_CONFIG={valid accessible directory}之后添加set HERMES_HOME)。

现在按如下方式配置Hermes JMS。

  1. 转到操作 - >新建会话,在弹出窗口中单击窗口底部的“提供者”选项卡。右键单击类路径组并选择添加组并输入HornetQ并单击OK。
  2. 展开hornetQ并右键单击库并选择添加罐子,按照3& 4步骤添加以下所有罐子。
  3. 平均时间Goto {HermesJMS主目录} \ providers创建目录HermesJMS并从hornetq服务器的hornetq \ lib目录中复制以下库

    hornetq-core-client.jar
    hornetq-jms-client.jar
    hornetq-logging.jar
    jboss-jms-api.jar
    jnp-client.jar
    netty.jar
    
  4. 保存并重新启动HermesJMS应用程序

  5. 连接工厂部分

    binding = ConnectionFactory
    initialContextFactory = org.jnp.interfaces.NamingContextFactory
    providerURL = jnp://localhost:1099
    urlPkgPrefixes = org.jnp.interfaces:org.jboss.naming
    
  6. 使用名称

  7. 保存设置
  8. 点击会话右键 - >您在步骤6中创建的新会话,然后选择发现。它将填充所有JMS队列。
  9. 现在选择目标JMS队列,然后单击“浏览”。
  10. 注意 HoentQ一旦从您的侦听器读取就不存储消息,因此,如果您需要在HermesJMS中查看消息,则需要在延迟一段时间后阅读该消息。