我在使用JMS Publisher让JMeter与WSO2 Message Broker一起工作时遇到了一些问题 . 我让JMeter与ActiveMQ合作,但我仍然使用该工具 .
我将客户端库复制到jmeter wso2mb-2.0.1 \ client-lib到apache-jmeter-2.9 \ lib
-
andes-client-0.13.wso2v4.jar
-
geronimo-jms_1.1_spec-1.1.0.wso2v1.jar
设置:
-
Context Factory:org.wso2.andes.jndi.PropertiesFileInitialContextFactory
-
提供商网址:amqp:// admin:admin @ clientID / carbon?brokerlist = 'tcp://localhost:5672'
-
连接工厂:qpidConnectionfactory
...还尝试了其他几个值
- 目的地:dynamicQueues / test
我得到的错误是在连接工厂字段上 .
我尝试了几个不同的值,所有这些值都会产生命名错误,就像缺少设置一样 .
当我把它留空时,我得到:
javax.naming.NamingException:预期的javax.jms.ConnectionFactory,找到org.wso2.andes.jndi.ReadOnlyContext
有谁知道我在这里缺少什么?
怀疑它很简单 .
1 回答
我发现了这个问题 .
简而言之,qpid上下文工厂
org.wso2.andes.jndi.PropertiesFileInitialContextFactory
不使用与activeMQ上下文工厂org.apache.activemq.jndi.ActiveMQInitialContextFactory
相同的字段 .虽然ActiveMQ允许您不使用Jmeter的单独属性文件,但Qpid不允许 .
Jmeter JMS Publisher:
Context Factory:org.wso2.andes.jndi.PropertiesFileInitialContextFactory
Provider Url:nameOfYouFile.properties
连接工厂:qpidConnectionfactory
目的地:
<QueuePropertyName>
nameOfYouFile.properties:
参考:Qpid Wiki