Ballerina JMS Connector is used to connect Ballerina with JMS Message Brokers. With the JMS Connector Ballerina can act as JMS Message Consumers and JMS Message Producers.
Steps to configure,
- Extract
ballerina-jms-connector-<version>.zip
and copy containing jars in to<BRE_HOME>/bre/lib/
- Copy JMS Broker Client jars into
<BRE_HOME>/bre/lib/
Ballerina as a JMS Consumer
import ballerina/net.jms;
import ballerina/io;
endpoint jms:ConsumerEndpoint ep1 {
initialContextFactory: "wso2mbInitialContextFactory",
providerUrl: "amqp://admin:admin@carbon/carbon?brokerlist='tcp://localhost:5672'"
};
@jms:ServiceConfig {
destination: "testQueue"
}
service<jms:Service> jmsService bind ep1 {
onMessage (endpoint client, jms:Message message) {
string messageText = message.getTextMessageContent();
io:println("Message: " + messageText);
}
}
Ballerina as a JMS Producer
import ballerina/net.jms;
endpoint jms:ClientEndpoint jmsEP {
initialContextFactory:"wso2mbInitialContextFactory",
providerUrl: "amqp://admin:admin@carbon/carbon?brokerlist='tcp://localhost:5672'"
};
function main (string[] args) {
// Create a Text message.
jms:Message queueMessage = jmsEP.createTextMessage("Hello from Ballerina!");
// Send the Ballerina message to the JMS provider.
jmsEP->send("MyQueue", queueMessage);
}
For more JMS Connector Ballerina configurations please refer to the samples directory.