[英]Trying to use jms publisher/subscriber in jmeter to connect to IBM MQ
[英]How to connect to IBM MQ from JMS publisher without JNDI properties?
我一直在嘗試從JMeter JMS發布者連接到IBM MQ。 無法找到更正的“初始上下文工廠”和“連接工廠”值以在沒有JNDI屬性的情況下使用。 我的LIB文件夾中存在所有MQ罐。
我具有以下信息主機名-Venus,端口-21717,目標隊列名稱-request.queue,隊列管理器-venus.QMGR,通道-venus.server.chl(無需授權)。
我的要求-使用具有上述詳細信息的JMS Publisher連接到IBM MQ。 但是我無法弄清楚要提供的提供商URL,初始上下文工廠和連接工廠。 您能幫上忙嗎,因為這已經困擾了我兩周了,還找不到解決方案? 如果您能告訴我有關在JMS Publisher中填充上述值以及連接到IBM MQ的位置的信息,那將很好。
我也嘗試過使用user.classpath = / folder / with / mq / jars,但是它不起作用,並且所有的jar都在適當的位置,JMeter重新啟動仍然沒有運氣。
注意:這兩個星期我瀏覽了所有站點,但沒有任何運氣。
示例配置步驟如下所示:
將以下代碼放入“腳本”區域:
import com.ibm.jms.JMSTextMessage; import com.ibm.mq.jms.*; import com.ibm.msg.client.wmq.WMQConstants; import javax.jms.JMSException; import javax.jms.Session; MQQueueConnectionFactory cf = new MQQueueConnectionFactory(); cf.setHostName("your_IBMMQ_host"); cf.setPort(1414); // or other port cf.setIntProperty(WMQConstants.WMQ_CONNECTION_MODE, WMQConstants.WMQ_CM_CLIENT); cf.setQueueManager("your_IBMMQ_queue_manager"); cf.setChannel("your_IBMMQ_channel"); cf.setStringProperty(WMQConstants.USERID, "your_IBMMQ_username"); cf.setStringProperty(WMQConstants.PASSWORD, "your_IBMMQ_password"); connection = (MQQueueConnection) cf.createQueueConnection(); MQQueueSession session = (MQQueueSession) connection.createQueueSession(false, Session.AUTO_ACKNOWLEDGE); MQQueue queue = (MQQueue) session.createQueue("queue:///your_IBMMQ_queue"); MQQueueSender sender = (MQQueueSender) session.createSender(queue); JMSTextMessage message = (JMSTextMessage) session.createTextMessage("your_message_body"); connection.start(); sender.send(message);
更多信息:
根據您的確切要求,您可能會對JMSToolBox感興趣,它可能會定義scripts
來從存儲在目錄中的csv
文件中讀取有效負載,然后將其創建並作為消息模板中的JMS消息發布到MQ Q中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.