如何在导入连接到JMS MQ的SOAP项目时在java项目中手动创建Hermes会话
我创建了一个SoapUI项目,该项目与一个消息队列连接并向其发送JMS消息。为了连接MQ,我使用了SoapUI提供的HERMES工具。目前我使用的是爱马仕v1。十四,
我已经在Hermes端创建了所需的会话和相应的队列,并按照如下步骤发送JMS消息:https://www.soapui.org/documentation/jms/config.html,https://www.soapui.org/jms/working-with-jms-messages.html
这一切都很好
现在,我正试图将这个SOAPUI项目合并到一个Java项目中,在该项目中,我将提供项目XML并运行所有必需的测试用例。我无法通过Java代码创建HERMES会话和队列等。下面是该类的一些代码片段。我走对了吗?正在寻找一些帮助来配置此
TestRunner runner = null;
SoapUI.setSoapUICore(new StandaloneSoapUICore(true));
WsdlProject project = new WsdlProject("C:\\My Directory\\CustomerTest-soapui-project.xml");
List<TestSuite> suiteList = project.getTestSuiteList();
String defaultHermesJMSPath= HermesUtils.defaultHermesJMSPath();
System.out.println("defaultHermesJMSPath- "+defaultHermesJMSPath);
String soapUiHome = System.getProperty("soapui.home");
System.out.println("soapUiHome - "+soapUiHome);
//System.setProperty("soapui.home", "C:\\Program Files\\SmartBear\\SoapUI-5.2.1\\bin");
TestRunner runner = project.getTestSuiteByName("Private Individual").getTestCaseByName(
"TEST CASE CONTAINING GROOVY SCRIPT TEST STEPTHAT CONNECTS TO HERMES").run
(new PropertiesMap(), false);
输出:
defaultHermesJMSPath - null
soapuiHome - null
另外,我已经为这包括了一些罐子,它们是:
任何帮助都将不胜感激
# 1 楼答案
很简单,唯一的问题是你应该创建临时队列来获得响应
}
# 2 楼答案
这个问题的主要关注点是创建一个最终独立于HERMES GUI的SOAP项目,以便配置会话、队列等。我最终为MQQueueConnectionFactory、QueueConnection、QueueSession、MQQueue、MQQueueSender、,JMSTextMessage,并将JMS消息发送到队列。因此,无需打开Hermes UI并在那里进行配置。下面是可以遵循的示例代码
以下依赖项必须已经存在于SoapUI库中(\SoapUI-5.2.1\Lib)&Hermes-Lib文件夹(\SoapUI-5.2.1\hermesJMS\Lib):
com。国际商用机器公司dhbcore。jar,com。国际商用机器公司mq。jar,com。国际商用机器公司mq。pcf。jar,com。国际商用机器公司mqjms。罐子,连接器。jar,javax。交易罐子