简体   繁体   English

使用Gatling将消息发布到ActiveMQ

[英]Publishing messages to ActiveMQ using Gatling

I have been using Gatling to publish messages to ActiveMq server. 我一直在使用Gatling向ActiveMq服务器发布消息。 I get "java.lang.SecurityException: Invalid username: null or empty" tho I use valid username and password. 我得到“java.lang.SecurityException:无效的用户名:null或空”我使用有效的用户名和密码。 Here is my test code and the exception were thrown. 这是我的测试代码,抛出了异常。 Any inputs on how to fix this will be of help. 关于如何解决这个问题的任何意见都会有所帮助。

import io.gatling.core.Predef.Simulation
import io.gatling.core.Predef._
import io.gatling.jms.Predef._
import io.gatling.core.config.Credentials
import org.apache.activemq.ActiveMQConnectionFactory
import org.apache.activemq.jndi.ActiveMQInitialContextFactory
import javax.jms._ 
    class WebProducer extends  Simulation{
      val jmsUsername:String="userName"
      val jmsPwd:String="Password"
      val jmsConfig = jms
        .connectionFactoryName("ConnectionFactory")
        .url("ssl://message01-dev.platform.net:61617")
        .credentials(jmsUsername,jmsPwd)
        .disableAnonymousConnect
        .contextFactory(classOf[org.apache.activemq.jndi.ActiveMQInitialContextFactory].getName)
         .listenerCount(1)
        .usePersistentDeliveryMode
        .receiveTimeout(6000)

      val scn = scenario("JMS DSL test").repeat(1) {
        exec(jms("req reply testing").
          reqreply
          .queue("YourJMSQueueName")
          .replyQueue("YourJMSQueueName")
          .textMessage("payload To be posted")
          .property("company_id", "1234598776665")
          .property("event_type","EntityCreate")
          .property("event_target_entity_type","Account")    
        )
      }
      setUp(scn.inject(atOnceUsers(1)))
        .protocols(jmsConfig)         
    }

Following is the exception was thrown : 以下是抛出的异常:

java.lang.SecurityException: Invalid username:  null or empty

Ok, I got this working adding two things : 好的,我有这个工作添加两件事:

-  .disableAnonymousConnect after  .credentials(jmsUsername,jmsPwd)
-  .replyQueue(jmsQueueName) after .queue(jmsQueueName)

I edited the above code to reflect the same. 我编辑了上面的代码以反映相同的内容。 Happy Gatling ! 快乐的加特林!

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM