send MQ message draft

This commit is contained in:
Radek Davidek 2026-02-27 15:58:20 +01:00
parent e9105429e1
commit 0b0b118a3b
5 changed files with 365 additions and 290 deletions

View File

@ -461,16 +461,16 @@
<repository> <repository>
<snapshots><enabled>false</enabled></snapshots> <snapshots><enabled>false</enabled></snapshots>
<releases><enabled>true</enabled></releases> <releases><enabled>true</enabled></releases>
<id>central</id> <id>mcentral</id>
<name>libs-release</name> <name>Maven Central</name>
<url>https://artifactory-aws.ux.mbid.cz/artifactory/libs-release</url> <url>https://repo1.maven.org/maven2/</url>
</repository> </repository>
<repository> <repository>
<snapshots><enabled>true</enabled></snapshots> <snapshots><enabled>false</enabled></snapshots>
<releases><enabled>false</enabled></releases> <releases><enabled>true</enabled></releases>
<id>snapshots</id> <id>mvnrepo</id>
<name>libs-snapshot</name> <name>MVN Repository</name>
<url>https://artifactory-aws.ux.mbid.cz/artifactory/libs-snapshot</url> <url>https://mvnrepository.com/artifact/</url>
</repository> </repository>
</repositories> </repositories>
<pluginRepositories> <pluginRepositories>

View File

@ -1,23 +1,5 @@
package cz.moneta.test.harness.connectors.messaging; package cz.moneta.test.harness.connectors.messaging;
import com.ibm.msg.client.jms.JmsConnectionFactory;
import com.ibm.msg.client.jms.JmsFactoryFactory;
import com.ibm.msg.client.wmq.WMQConstants;
import cz.moneta.test.harness.connectors.Connector;
import cz.moneta.test.harness.exception.MessagingTimeoutException;
import cz.moneta.test.harness.messaging.model.MessageContentType;
import cz.moneta.test.harness.messaging.model.MqMessageFormat;
import cz.moneta.test.harness.messaging.model.ReceivedMessage;
import javax.jms.BytesMessage;
import javax.jms.JMSConsumer;
import javax.jms.JMSContext;
import javax.jms.JMSException;
import javax.jms.JMSProducer;
import javax.jms.Message;
import javax.jms.Queue;
import javax.jms.QueueBrowser;
import javax.jms.TextMessage;
import java.nio.charset.Charset; import java.nio.charset.Charset;
import java.nio.charset.StandardCharsets; import java.nio.charset.StandardCharsets;
import java.time.Duration; import java.time.Duration;
@ -32,11 +14,30 @@ import java.util.Optional;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import java.util.function.Predicate; import java.util.function.Predicate;
import javax.jms.BytesMessage;
import javax.jms.JMSConsumer;
import javax.jms.JMSContext;
import javax.jms.JMSException;
import javax.jms.JMSProducer;
import javax.jms.Message;
import javax.jms.Queue;
import javax.jms.QueueBrowser;
import javax.jms.TextMessage;
import com.ibm.mq.jms.MQConnectionFactory;
import com.ibm.msg.client.wmq.WMQConstants;
import cz.moneta.test.harness.connectors.Connector;
import cz.moneta.test.harness.exception.MessagingTimeoutException;
import cz.moneta.test.harness.messaging.model.MessageContentType;
import cz.moneta.test.harness.messaging.model.MqMessageFormat;
import cz.moneta.test.harness.messaging.model.ReceivedMessage;
public class IbmMqConnector implements Connector { public class IbmMqConnector implements Connector {
private static final Charset EBCDIC_870 = Charset.forName("IBM870"); private static final Charset EBCDIC_870 = Charset.forName("IBM870");
private static final Charset UTF_8 = StandardCharsets.UTF_8; private static final Charset UTF_8 = StandardCharsets.UTF_8;
private final JmsConnectionFactory connectionFactory; private final MQConnectionFactory connectionFactory;
private final String user; private final String user;
private final String password; private final String password;
private final Object contextLock = new Object(); private final Object contextLock = new Object();
@ -49,7 +50,8 @@ public class IbmMqConnector implements Connector {
String user, String user,
String password, String password,
String keystorePath, String keystorePath,
String keystorePassword) { String keystorePassword,
String cipherSuite) {
this.user = user; this.user = user;
this.password = password; this.password = password;
try { try {
@ -60,15 +62,22 @@ public class IbmMqConnector implements Connector {
} }
} }
JmsFactoryFactory factoryFactory = JmsFactoryFactory.getInstance(WMQConstants.WMQ_PROVIDER); connectionFactory = new MQConnectionFactory();
connectionFactory = factoryFactory.createConnectionFactory(); connectionFactory.setHostName(host);
connectionFactory.setStringProperty(WMQConstants.WMQ_HOST_NAME, host); connectionFactory.setPort(port);
connectionFactory.setIntProperty(WMQConstants.WMQ_PORT, port); connectionFactory.setQueueManager(queueManager);
connectionFactory.setStringProperty(WMQConstants.WMQ_CHANNEL, channel); connectionFactory.setChannel(channel);
connectionFactory.setStringProperty(WMQConstants.WMQ_QUEUE_MANAGER, queueManager); connectionFactory.setTransportType(WMQConstants.WMQ_CM_CLIENT);
connectionFactory.setIntProperty(WMQConstants.WMQ_CONNECTION_MODE, WMQConstants.WMQ_CM_CLIENT); if (user != null && !user.isBlank()) {
connectionFactory.setStringProperty(WMQConstants.USERID, user); connectionFactory.setStringProperty(WMQConstants.USERID, user);
connectionFactory.setStringProperty(WMQConstants.PASSWORD, password); }
if (password != null && !password.isBlank()) {
connectionFactory.setStringProperty(WMQConstants.PASSWORD, password);
}
if (cipherSuite != null && !cipherSuite.isBlank()) {
connectionFactory.setSSLCipherSuite(cipherSuite);
}
} catch (Exception e) { } catch (Exception e) {
throw new IllegalStateException("Failed to initialize IBM MQ connection factory", e); throw new IllegalStateException("Failed to initialize IBM MQ connection factory", e);
} }

View File

@ -25,6 +25,7 @@ public class IbmMqEndpoint implements Endpoint {
private static final String CONFIG_VAULT_PATH = "vault.path.messaging.ibmmq"; private static final String CONFIG_VAULT_PATH = "vault.path.messaging.ibmmq";
private static final String CONFIG_USERNAME = "messaging.ibmmq.username"; private static final String CONFIG_USERNAME = "messaging.ibmmq.username";
private static final String CONFIG_PASSWORD = "messaging.ibmmq.password"; private static final String CONFIG_PASSWORD = "messaging.ibmmq.password";
private static final String CONFIG_SSL_CYPHER_SUITES = "messaging.ibmmq.ssl-cipher-suite";
private final StoreAccessor store; private final StoreAccessor store;
private volatile IbmMqConnector connector; private volatile IbmMqConnector connector;
@ -86,8 +87,9 @@ public class IbmMqEndpoint implements Endpoint {
String password = resolveSecret(CONFIG_PASSWORD, "password"); String password = resolveSecret(CONFIG_PASSWORD, "password");
String keystorePath = store.getConfig(CONFIG_KEYSTORE_PATH); String keystorePath = store.getConfig(CONFIG_KEYSTORE_PATH);
String keystorePassword = store.getConfig(CONFIG_KEYSTORE_PASSWORD); String keystorePassword = store.getConfig(CONFIG_KEYSTORE_PASSWORD);
String sslCipherSuites = store.getConfig(CONFIG_SSL_CYPHER_SUITES);
return new IbmMqConnector(host, port, channel, queueManager, username, password, keystorePath, keystorePassword); return new IbmMqConnector(host, port, channel, queueManager, username, password, keystorePath, keystorePassword, sslCipherSuites);
} }
private String resolveSecret(String localConfigKey, String vaultKey) { private String resolveSecret(String localConfigKey, String vaultKey) {

View File

@ -1,256 +1,296 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" <project
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
<modelVersion>4.0.0</modelVersion> xmlns="http://maven.apache.org/POM/4.0.0"
<groupId>cz.moneta.test</groupId> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<artifactId>tests</artifactId> <modelVersion>4.0.0</modelVersion>
<version>2.28-SNAPSHOT</version> <groupId>cz.moneta.test</groupId>
<properties> <artifactId>tests</artifactId>
<harness.version>7.55-SNAPSHOT</harness.version> <version>2.28-SNAPSHOT</version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <properties>
<junit.platform.version>1.5.1</junit.platform.version> <harness.version>7.55-SNAPSHOT</harness.version>
</properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<dependencies> <junit.platform.version>1.5.1</junit.platform.version>
<dependency> <ibm.mq.version>9.4.2.0</ibm.mq.version>
<groupId>cz.moneta.test</groupId> </properties>
<artifactId>harness</artifactId> <dependencies>
<version>${harness.version}</version> <dependency>
</dependency> <groupId>cz.moneta.test</groupId>
<dependency> <artifactId>harness</artifactId>
<groupId>org.slf4j</groupId> <version>${harness.version}</version>
<artifactId>slf4j-api</artifactId> </dependency>
<version>1.7.25</version> <dependency>
</dependency> <groupId>com.ibm.mq</groupId>
<dependency> <artifactId>com.ibm.mq.allclient</artifactId>
<groupId>com.fasterxml.jackson.dataformat</groupId> <version>${ibm.mq.version}</version>
<artifactId>jackson-dataformat-csv</artifactId> </dependency>
<version>2.16.1</version>
</dependency> <dependency>
<dependency> <groupId>javax.jms</groupId>
<groupId>com.fasterxml.jackson.datatype</groupId> <artifactId>javax.jms-api</artifactId>
<artifactId>jackson-datatype-jsr310</artifactId> <version>2.0.1</version>
<version>2.16.1</version> </dependency>
</dependency> <dependency>
<dependency> <groupId>org.slf4j</groupId>
<groupId>org.projectlombok</groupId> <artifactId>slf4j-api</artifactId>
<artifactId>lombok</artifactId> <version>1.7.25</version>
<version>1.18.30</version> </dependency>
<scope>provided</scope> <dependency>
</dependency> <groupId>com.fasterxml.jackson.dataformat</groupId>
<dependency> <artifactId>jackson-dataformat-csv</artifactId>
<groupId>com.microsoft.sqlserver</groupId> <version>2.16.1</version>
<artifactId>mssql-jdbc_auth</artifactId> </dependency>
<version>8.2.0.x86</version> <dependency>
<type>dll</type> <groupId>com.fasterxml.jackson.datatype</groupId>
</dependency> <artifactId>jackson-datatype-jsr310</artifactId>
<dependency> <version>2.16.1</version>
<groupId>org.jetbrains</groupId> </dependency>
<artifactId>annotations</artifactId> <dependency>
<version>15.0</version> <groupId>org.projectlombok</groupId>
</dependency> <artifactId>lombok</artifactId>
<dependency> <version>1.18.30</version>
<groupId>org.junit.platform</groupId> <scope>provided</scope>
<artifactId>junit-platform-reporting</artifactId> </dependency>
<version>${junit.platform.version}</version> <dependency>
</dependency> <groupId>com.microsoft.sqlserver</groupId>
<dependency> <artifactId>mssql-jdbc_auth</artifactId>
<groupId>org.junit.platform</groupId> <version>8.2.0.x86</version>
<artifactId>junit-platform-console</artifactId> <type>dll</type>
<version>${junit.platform.version}</version> </dependency>
</dependency> <dependency>
<dependency> <groupId>org.jetbrains</groupId>
<groupId>org.yaml</groupId> <artifactId>annotations</artifactId>
<artifactId>snakeyaml</artifactId> <version>15.0</version>
<version>1.26</version> </dependency>
</dependency> <dependency>
</dependencies> <groupId>org.junit.platform</groupId>
<profiles> <artifactId>junit-platform-reporting</artifactId>
<profile> <version>${junit.platform.version}</version>
<id>Moneta Artifactory</id> </dependency>
<activation> <dependency>
<activeByDefault>true</activeByDefault> <groupId>org.junit.platform</groupId>
</activation> <artifactId>junit-platform-console</artifactId>
<build> <version>${junit.platform.version}</version>
<plugins> </dependency>
<plugin> <dependency>
<groupId>org.apache.maven.plugins</groupId> <groupId>org.yaml</groupId>
<artifactId>maven-dependency-plugin</artifactId> <artifactId>snakeyaml</artifactId>
<version>3.9.0</version> <version>1.26</version>
<executions> </dependency>
<execution> </dependencies>
<phase>install</phase> <profiles>
<goals> <profile>
<goal>copy-dependencies</goal> <id>Moneta Artifactory</id>
</goals> <activation>
<activeByDefault>true</activeByDefault>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>3.9.0</version>
<executions>
<execution>
<phase>install</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<outputDirectory>
${project.build.directory}/lib</outputDirectory>
<includeScope>runtime</includeScope>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.13.0</version>
<configuration> <configuration>
<outputDirectory>${project.build.directory}/lib</outputDirectory> <source>17</source>
<includeScope>runtime</includeScope> <target>17</target>
</configuration> </configuration>
</execution> </plugin>
</executions> <plugin>
</plugin> <artifactId>maven-surefire-plugin</artifactId>
<plugin> <version>2.22.2</version>
<artifactId>maven-compiler-plugin</artifactId> <configuration>
<version>3.13.0</version> <argLine>
<configuration> --add-opens
<source>17</source> java.base/java.lang.invoke=ALL-UNNAMED
<target>17</target> -Dhttp.proxyHost=wsa-aws.mbid.cz
</configuration> -Dhttp.proxyPort=8008
</plugin> -Dhttps.proxyHost=wsa-aws.mbid.cz
<plugin> -Dhttps.proxyPort=8008
<artifactId>maven-surefire-plugin</artifactId> -Dhttp.nonProxyHosts="elasticclusterawscoord*|elasticclusterawsingest*|jenkinslivex*|cbltstx|vault|vault.svc.k8s.moneta-containers.net|selenium-hub.svc.k8s.moneta-containers.net|jira*|d000*|x000*|l000*|digdev*|r000|spii-live-significant|mbczvl1dl0ihat3.ux.mbid.cz|mbczvl1dl0ihet3.ux.mbid.cz|wso2-fve-gw.ux.mbid.cz|wso2eifve.lb.mbid.cz|wso2eippe.lb.mbid.cz|wso2-ppe-gw.ux.mbid.cz|mbczvl0bl0enin3.ux.mbid.cz|wso2-tst1-gw.ux.mbid.cz|wso2eitst1.lb.mbid.cz|wso2-edu-gw.ux.mbid.cz|mbczvl0bl0enin5.ux.mbid.cz|mbczvl1dl0enin6.ux.mbid.cz|wso2api01-wso2-02.ux.mbid.cz|api-szr.tst.moneta-containers.net|api-szr.ppe.moneta-containers.net|docker1|mbczvl1dl0mockt.ux.mbid.cz|api.tst.moneta-containers.net|api.ppe.moneta-containers.net"</argLine>
<version>2.22.2</version> <includes>
<configuration> <include>
<argLine>--add-opens java.base/java.lang.invoke=ALL-UNNAMED -Dhttp.proxyHost=wsa-aws.mbid.cz -Dhttp.proxyPort=8008 -Dhttps.proxyHost=wsa-aws.mbid.cz -Dhttps.proxyPort=8008 cz.moneta.test.sandbox.demo.HarnessDemoTest.java</include>
-Dhttp.nonProxyHosts="elasticclusterawscoord*|elasticclusterawsingest*|jenkinslivex*|cbltstx|vault|vault.svc.k8s.moneta-containers.net|selenium-hub.svc.k8s.moneta-containers.net|jira*|d000*|x000*|l000*|digdev*|r000|spii-live-significant|mbczvl1dl0ihat3.ux.mbid.cz|mbczvl1dl0ihet3.ux.mbid.cz|wso2-fve-gw.ux.mbid.cz|wso2eifve.lb.mbid.cz|wso2eippe.lb.mbid.cz|wso2-ppe-gw.ux.mbid.cz|mbczvl0bl0enin3.ux.mbid.cz|wso2-tst1-gw.ux.mbid.cz|wso2eitst1.lb.mbid.cz|wso2-edu-gw.ux.mbid.cz|mbczvl0bl0enin5.ux.mbid.cz|mbczvl1dl0enin6.ux.mbid.cz|wso2api01-wso2-02.ux.mbid.cz|api-szr.tst.moneta-containers.net|api-szr.ppe.moneta-containers.net|docker1|mbczvl1dl0mockt.ux.mbid.cz|api.tst.moneta-containers.net|api.ppe.moneta-containers.net"</argLine> </includes>
<includes> <trimStackTrace>false</trimStackTrace>
<include>cz.moneta.test.sandbox.demo.HarnessDemoTest.java</include> <useFile>false</useFile>
</includes> </configuration>
<trimStackTrace>false</trimStackTrace> </plugin>
<useFile>false</useFile> </plugins>
</configuration> </build>
</plugin> <repositories>
</plugins> <repository>
</build> <snapshots>
<repositories> <enabled>false</enabled>
<repository> </snapshots>
<releases> <releases>
<enabled>true</enabled> <enabled>true</enabled>
</releases> </releases>
<snapshots> <id>confluent</id>
<enabled>false</enabled> <name>Confluent Hub</name>
</snapshots> <url>https://packages.confluent.io/maven/</url>
<id>central</id> </repository>
<name>libs-release</name> <repository>
<url>https://artifactory-aws.ux.mbid.cz/artifactory/libs-release</url> <snapshots>
</repository> <enabled>false</enabled>
<repository> </snapshots>
<releases> <releases>
<enabled>false</enabled> <enabled>true</enabled>
</releases> </releases>
<snapshots> <id>mcentral</id>
<enabled>true</enabled> <name>Maven Central</name>
</snapshots> <url>https://repo1.maven.org/maven2/</url>
<id>snapshots</id> </repository>
<name>libs-snapshot</name> <repository>
<url>https://artifactory-aws.ux.mbid.cz/artifactory/libs-snapshot</url> <snapshots>
</repository> <enabled>false</enabled>
</repositories> </snapshots>
<pluginRepositories> <releases>
<pluginRepository> <enabled>true</enabled>
<releases> </releases>
<enabled>true</enabled> <id>mvnrepo</id>
</releases> <name>MVN Repository</name>
<snapshots> <url>https://mvnrepository.com/artifact/</url>
<enabled>false</enabled> </repository>
</snapshots> </repositories>
<id>central</id> <pluginRepositories>
<name>plugins-release</name> <pluginRepository>
<url>https://artifactory-aws.ux.mbid.cz/artifactory/plugins-release</url> <releases>
</pluginRepository> <enabled>true</enabled>
<pluginRepository> </releases>
<releases> <snapshots>
<enabled>false</enabled> <enabled>false</enabled>
</releases> </snapshots>
<snapshots> <id>central</id>
<enabled>true</enabled> <name>plugins-release</name>
</snapshots> <url>
<id>snapshots</id> https://artifactory-aws.ux.mbid.cz/artifactory/plugins-release</url>
<name>plugins-snapshot</name> </pluginRepository>
<url>https://artifactory-aws.ux.mbid.cz/artifactory/plugins-snapshot</url> <pluginRepository>
</pluginRepository> <releases>
</pluginRepositories> <enabled>false</enabled>
</profile> </releases>
<profile> <snapshots>
<id>build.package</id> <enabled>true</enabled>
<activation> </snapshots>
<property> <id>snapshots</id>
<name>build.package</name> <name>plugins-snapshot</name>
<value>true</value> <url>
</property> https://artifactory-aws.ux.mbid.cz/artifactory/plugins-snapshot</url>
</activation> </pluginRepository>
<build> </pluginRepositories>
<plugins> </profile>
<plugin> <profile>
<artifactId>maven-compiler-plugin</artifactId> <id>build.package</id>
<version>3.13.0</version> <activation>
<configuration> <property>
<source>17</source> <name>build.package</name>
<target>17</target> <value>true</value>
</configuration> </property>
</plugin> </activation>
<plugin> <build>
<artifactId>maven-assembly-plugin</artifactId> <plugins>
<version>3.6.0</version> <plugin>
<executions> <artifactId>maven-compiler-plugin</artifactId>
<execution> <version>3.13.0</version>
<phase>package</phase> <configuration>
<goals> <source>17</source>
<goal>single</goal> <target>17</target>
</goals> </configuration>
<configuration> </plugin>
<archive> <plugin>
<manifest> <artifactId>maven-assembly-plugin</artifactId>
<mainClass>cz.moneta.test.testrunner.TestRunner</mainClass> <version>3.6.0</version>
</manifest> <executions>
</archive> <execution>
<descriptors> <phase>package</phase>
<descriptor>src/assembly/assembly.xml</descriptor> <goals>
</descriptors> <goal>single</goal>
</configuration> </goals>
</execution> <configuration>
</executions> <archive>
</plugin> <manifest>
</plugins> <mainClass>
</build> cz.moneta.test.testrunner.TestRunner</mainClass>
<repositories> </manifest>
<repository> </archive>
<releases> <descriptors>
<enabled>true</enabled> <descriptor>src/assembly/assembly.xml</descriptor>
</releases> </descriptors>
<snapshots> </configuration>
<enabled>false</enabled> </execution>
</snapshots> </executions>
<id>central</id> </plugin>
<name>libs-release</name> </plugins>
<url>https://artifactory-aws.ux.mbid.cz/artifactory/libs-release</url> </build>
</repository> <repositories>
<repository> <repository>
<releases> <releases>
<enabled>false</enabled> <enabled>true</enabled>
</releases> </releases>
<snapshots> <snapshots>
<enabled>true</enabled> <enabled>false</enabled>
</snapshots> </snapshots>
<id>snapshots</id> <id>central</id>
<name>libs-snapshot</name> <name>libs-release</name>
<url>https://artifactory-aws.ux.mbid.cz/artifactory/libs-snapshot</url> <url>
</repository> https://artifactory-aws.ux.mbid.cz/artifactory/libs-release</url>
</repositories> </repository>
<pluginRepositories> <repository>
<pluginRepository> <releases>
<releases> <enabled>false</enabled>
<enabled>true</enabled> </releases>
</releases> <snapshots>
<snapshots> <enabled>true</enabled>
<enabled>false</enabled> </snapshots>
</snapshots> <id>snapshots</id>
<id>central</id> <name>libs-snapshot</name>
<name>plugins-release</name> <url>
<url>https://artifactory-aws.ux.mbid.cz/artifactory/plugins-release</url> https://artifactory-aws.ux.mbid.cz/artifactory/libs-snapshot</url>
</pluginRepository> </repository>
<pluginRepository> </repositories>
<releases> <pluginRepositories>
<enabled>false</enabled> <pluginRepository>
</releases> <releases>
<snapshots> <enabled>true</enabled>
<enabled>true</enabled> </releases>
</snapshots> <snapshots>
<id>snapshots</id> <enabled>false</enabled>
<name>plugins-snapshot</name> </snapshots>
<url>https://artifactory-aws.ux.mbid.cz/artifactory/plugins-snapshot</url> <id>central</id>
</pluginRepository> <name>plugins-release</name>
</pluginRepositories> <url>
</profile> https://artifactory-aws.ux.mbid.cz/artifactory/plugins-release</url>
</profiles> </pluginRepository>
<pluginRepository>
<releases>
<enabled>false</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
<id>snapshots</id>
<name>plugins-snapshot</name>
<url>
https://artifactory-aws.ux.mbid.cz/artifactory/plugins-snapshot</url>
</pluginRepository>
</pluginRepositories>
</profile>
</profiles>
</project> </project>

View File

@ -0,0 +1,24 @@
package cz.moneta.test.system.messaging;
import cz.moneta.test.dsl.Harness;
import cz.moneta.test.harness.annotations.TestCase;
import cz.moneta.test.harness.annotations.TestScenario;
@TestScenario(name = "Send MQ message")
public class SendMQMessage {
@TestCase(name = "Send MQ message")
public void sendMessage(Harness harness) {
String message = "Hello, this is a test message!";
String destination = "mainframe-utf8-queue";
System.setProperty("javax.net.ssl.trustStore", "/home/kamma/tmp/mq-docker/ibmmq-client.p12");
System.setProperty("javax.net.ssl.trustStorePassword", "changeit");
//System.setProperty("jdk.tls.client.protocols", "TLSv1.2");
//System.setProperty("javax.net.ssl.trustStoreType", "PKCS12");
harness.withMessaging().to(destination).asJson().withPayload(message).send();
}
}