Prerequisite:
- MuleSoft Anypoint Studio – Enterprise Edition.
- Access to TIBCO EMS Server.
- Establish connection to TIBCO EMS server with the help of JMS connector (this will need configuration parameters and required JAR files).
Mule integration flow
Mule Settings & Configurations:
1. Need to get the following required JMS jars from the Message broker (TIBCO EMS)
- jms-2.0.jar
- tibcrypt.jar
- tibjms.jar
- tibjmsadmin.jar
Will import those external jars into the respective project as per guidelines like the following location:
And then click on Apply and Close buttons.
As per the above step, we can import all required shared libraries into the respective project. These are useful for establishing the connection to EMS.
2. After that, copy the above jars in Anypoint Studio tooling as shown in the below path.
3. As per Mule 4 applications, include a mule-artifact.json file in META-INF/mule-artifact/. This describes your app, configuration settings, the required Mule version, and the class loader configuration for adding external jars in server.
Messaging channel (TIBCO EMS) Configurations:
1. In this step, we are doing configuration and settings at the messaging server level, which will start the server, establish the proper connections, and create the messaging models.
As shown in the screenshot above, the server is now started and has established connections with respect to the above configuration parameters. Messaging server always runs on TCP protocol in the single network layer.
Then we will use the proper EMS server URL and here is the tcp://host:port for an example as mentioned below.
tcp://localhost:7222, those are default values while used in the installation.
Login name: admin
Password: admin
2. In this we are creating destinations like queue/Topic, and here I am going to create MuleSample Queue with default settings and permissions. This queue is a static queue.
Example Use Case in MuleSoft Anypoint Studio:
Sending Message to EMS Flow:
In this example, we are pushing a sample message to the EMS server from the Web browser with the help of HTTP connector and JMS connector in the Mule 4.x version.
JMS Publisher connector configuration:
Enter the values for configuration, destination types, destination name, and actual request payload components in the General tab. For this, selecting the destination type is Queue type, the destination name is MuleSample (which we have created in the EMS server), and the payload is the actual business request, which we get from the Web browser.
After that, we need to establish a connection with the EMS server along with the configuration parameters that are provided by the Messaging channel. For this, please refer below steps:
1. Click on the Connector configuration tab:
2. Give a proper naming convention for the connection Name, for example:
3. Click on the Connection tab and select Generic Connection
4. And configure the required JMS driver:
5. Provide proper JNDI configuration parameters like the following:
6. Give proper Connection parameters in the Connection tab:
And then click on the OK button
Now we have established a proper connection with the TIBCO EMS server. Once we send the sample message/request from the web browser that message will send to the TIBCO EMS server with the help of the destination. Meanwhile, we will keep building/running the state of the respective Mule project.
Are you still having issues with establishing a connection to TIBCO EMS from JMS Connector in Mule 4.x? Our MuleSoft experts are here to help. Contact us today! We also have a great MuleSoft blog, check it out here!