Jar 无法在RedHat Enterprise Linux中使用WebSphere MQ 8配置HermesJMS
我正在尝试使用Jar 无法在RedHat Enterprise Linux中使用WebSphere MQ 8配置HermesJMS,jar,jms,ibm-mq,hermes-jms,websphere-mq,Jar,Jms,Ibm Mq,Hermes Jms,Websphere Mq,我正在尝试使用webspheremqv8.0配置hermesjmsv1.14,但我不能。我看过好几本教程,我也遵循了它们,尽管没有一本是这些版本 这就是我所做的。我已经下载了这个多平台多语言eAssembly的试用版mqv8.0。我已经按照这些说明安装了它 然后,我打开HermesJMS并将提供程序设置为demo_mq.html的第一部分(删除过时的链接),但库是: com.ibm.mq.commonservices.jar com.ibm.mq.jar com.ibm.mqjms.jar c
webspheremqv8.0
配置hermesjmsv1.14
,但我不能。我看过好几本教程,我也遵循了它们,尽管没有一本是这些版本
这就是我所做的。我已经下载了这个多平台多语言eAssembly的试用版mqv8.0。我已经按照这些说明安装了它
然后,我打开HermesJMS并将提供程序设置为demo_mq.html的第一部分(删除过时的链接),但库是:
- com.ibm.mq.commonservices.jar
- com.ibm.mq.jar
- com.ibm.mqjms.jar
- com.ibm.mq.pcf.jar
然后我点击Scan
,这很重要,因为这一步应该加载jar的所有类,我们以后必须使用这些类
然后,我使用刚才配置的加载器创建会话,当您更改加载器时,带有类的组合应该与连接工厂一起刷新,特别是我必须使用com.ibm.mq.jms.MQQueueConnectionFactory
,但它没有出现,似乎前面的扫描步骤不起作用
我查看了jar,知道类MQQueueConnectionFactory
在com.ibm.mq.jar
中
那么,有哪一步我忘了吗?我需要其他图书馆吗
请随时询问更多信息
提前谢谢
更新:
根据T.Rob答案添加更多信息
您没有提到已应用修复包。在8.0.0.1-3中有许多Java修复程序可能会使您的设置更有趣,并且您希望避免这些
是的,我用过了,我忘了提了,对不起
同一页还解释了setmqjmsenv程序可用于设置环境
我没有提到这一点,我使用了setmqenv
来配置PATH
环境变量
第一个问题的解决方案:
我已经解决了这个问题,但我认为没有“程序”来解决这个问题,我在这个网站上找到了这个
等等,找到解决办法了。首先,在“WMQ7”的情况下,从“加载程序”旁边的“中间窗格”中选择“类路径组名称”,然后返回到第一个窗格,并在插件下选择IBM WebS球eq。
我做了这样的事,瞧!该类将出现。现在我正在尝试配置属性:
- 插件:IBMWebSphereMQ
- 连接工厂:Class->com.ibm.mq.jms.MQQueueConnectionFactory
- 属性:主机名->
- 属性:端口->(我必须更改默认端口1414)
- 属性:queueManager->MY.QUEUE.MANAGER
- 属性:transportType->1
而且,当我执行右键
->发现
时,我会得到以下错误:
ERROR hermes.browser.tasks.HermesBrowserTaskListener - MQJE001: Completion Code '2', Reason '2035'.
我一直在寻找这个错误,它似乎是一个权威错误,所以我做了:
setmqaut -m MY.QUEUE.MANAGER -t qmgr -g <myUser> +all
setmqaut-m MY.QUEUE.MANAGER-t qmgr-g+all
myUser
是我添加到mqm
组的用户
希望你能帮助我
谢谢
然后,我打开HermesJMS并像的第一部分一样设置提供程序,但是库是
您可能希望尝试使用IBM的类路径规范,正如您在上面链接的同一文档手册中所找到的那样。他们的页面解释说,您只需要在类路径
中包含一个jar,而清单会将其他jar拉入
同一页还解释了setmqjmsenv
程序可用于设置环境。您可以运行它,然后捕获环境变量设置,并安排Hermes通过显式设置或用于启动它的服务ID继承它们
另外,请确保使用IBM提供的工具来验证客户端是否已正确安装,以及是否可以使用已知良好的软件连接到MQ。不幸的是,与Hermes斗争了一周,却发现MQ侦听器位于不同的端口上,或者您拼写的通道名称错误
您没有提到已应用修复包。在8.0.0.1-3中有许多Java修复程序可能会使您的设置更有趣,并且您希望避免这些
我已经下载了这个多平台多语言eAssembly的试用版mqv8.0试用版
如果您转到标记wiki,您将找到指向MQ Advanced for Developers的链接。这是一个功能完整、不过期的MQ版本,您可以免费使用。试用版下载最终将过期。希望不是在你让爱马仕和它说话之前,但它会过期,通常是在最不合适的时候
也会有一些指向补丁包的链接,但是您也可以通过转到IBM Fix Central并进行搜索轻松找到这些链接。感谢@umathy和@T.Rob
我可以把日志翻过来。我向任何有同样问题的人回答我自己的问题。这是我的错误文件:
AMQ5540:应用程序“hermes.browser.HermesBrowser”未提供用户ID
密码
说明:
队列管理器被配置为需要用户ID和密码,但没有用户ID和密码
供应
行动:
请确保应用程序提供有效的用户ID和密码,或更改
队列管理器配置为可选,以允许应用程序连接
尚未提供用户ID和密码的
然后我发现了这个
所以我做了:
ALTER AUTHINFO(SYSTEM.DEFAULT.AUTHINFO.IDPWOS) AUTHTYPE(IDPWOS) CHCKCLNT(OPTIONAL)
现在我可以连接了
谢谢你的帮助 如果您愿意使用HermesJMS以外的其他工具,那么您可以尝试使用JMSToolbox(来自sourceforge)
它比爱马仕更容易使用
(好吧,我的建议是有偏见的,我是JMSToolbox..lol的作者)而不是让客户机检查在连接上是可选的-通常,所有问题的答案似乎都是错误的