我写了一个简单的应用程序,它发送消息并在同一个应用程序中接收它。现在我想知道的是我在哪里可以找到HornetQ中发送的所有消息?
答案 0 :(得分:2)
您可以通过两种方式检查传递给HornetQ的消息。
方法1:
最简单方便,使用JConsole,从JDK目录打开JConsole并从本地进程中选择hornetQ进程(我假设你在本地机器上有hornetq,你需要启用远程JMX)并选择connect并转到MBans,如下图所示。并选择org.hornetq -> Queue -> JMS -> Your Queue -> Attributes
。两个参数消息计数和添加的消息指示JMS消息状态(请注意,此处无法读取消息)
方法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。
平均时间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
保存并重新启动HermesJMS应用程序
连接工厂部分
binding = ConnectionFactory
initialContextFactory = org.jnp.interfaces.NamingContextFactory
providerURL = jnp://localhost:1099
urlPkgPrefixes = org.jnp.interfaces:org.jboss.naming
使用名称
注意 HoentQ一旦从您的侦听器读取就不存储消息,因此,如果您需要在HermesJMS中查看消息,则需要在延迟一段时间后阅读该消息。