Accessing JMS Resources
To access JMS resources, create JMS Connection Factory and JMS Destination properties. If you create a property named connectionFactory of type JMS Connection Factory and a property named destination of type JMS Destination, TIBCO Business Studio - BPM Edition adds the following to the abstract implementation class:
import javax.jms.ConnectionFactory; import javax.jms.Destination; private ConnectionFactory connectionFactory; @Property(name = "connectionFactory") public void setConnectionFactory(ConnectionFactory connectionFactory) { this.connectionFactory = connectionFactory; } public ConnectionFactory getConnectionFactory() { return connectionFactory; } private Destination destination; @Property(name = "destination") public void setDestination(Destination destination) { this.destination = destination; } public Destination getDestination() { return destination; }
- Procedure
- Invoke the accessor methods in your component implementation.
import javax.jms.Connection; import javax.jms.Destination; import javax.jms.JMSException; import javax.jms.MessageProducer; import javax.jms.Session; import javax.jms.TextMessage; @Init public void init() throws JMSException { connection = getConnectionFactory().createConnection(); connection.start(); session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE); System.out.println(session); } @Destroy public void destroy() throws JMSException { session.close(); connection.stop(); connection.close(); } private String doPublish(String input ) throws JMSException { MessageProducer producer = session.createProducer(getDestination()); TextMessage message = session.createTextMessage("Input from SOAP Request :" + input ); producer.send(message); String msg_id = message.getJMSMessageID(); return msg_id; }