Naive尝试使用ActiveMQ客户端进行连接失败。 [0]
阅读它似乎建议的方法是使用可以从WebLogic服务器获取的客户端jar。 [1]
不应该将JMS作为标准,以便我能够使用任何标准JMS客户端进行连接吗?
[0]:当我尝试使用ActiveMQ客户端进行连接时,它失败了" JMSException:有线格式协商超时:对等方没有发送他的有线格式。"
[1]:例如https://redstack.wordpress.com/2009/12/21/a-simple-jms-client-for-weblogic-11g/
答案 0 :(得分:1)
是的,JMS是一种消息传递标准。 JMS API定义了一组通用接口,由每个提供者(或供应商)实现。 Weblogic,ActiveMQ,RabbitMQ或IBM websphere MQ为jms实现了自己的类。
这就是为什么你应该使用oracle jar,如果你正在处理weblogic。 您可以使用jar构建器工具
从weblogic服务器生成这些jarcd WL_HOME/server/lib
java -jar wljarbuilder.jar
它将为您提供wlfullclient.jar。
答案 1 :(得分:0)
回答这个问题:JMS是标准API,但没有指定有线协议。
这就是为什么我不能期望从ActiveMQ客户端连接到WebLogic服务器的原因。
有些JMS实现似乎试图解决这个问题。以下是我从IBM Integration Bus中找到的一个示例:https://www-01.ibm.com/support/knowledgecenter/SSMKHH_9.0.0/com.ibm.etools.mft.doc/ac66100_.htm