This groovy script lets you create a JMS endpoint and sends messages to queues using Groovy script:
import com.eviware.soapui.impl.wsdl.submit.transports.jms.JMSConnectionHolder; import com.eviware.soapui.impl.wsdl.submit.transports.jms.util.HermesUtils; import com.eviware.soapui.impl.wsdl.submit.transports.jms.JMSEndpoint; import hermes.Hermes; import javax.jms.*; def jmsEndpoint = new JMSEndpoint("jms://activeMQSession::queue_testQ1::queue_testQ1"); def hermes = HermesUtils.getHermes( context.testCase.testSuite.project, jmsEndpoint.sessionName); def jmsConnectionHolder = new JMSConnectionHolder( jmsEndpoint, hermes, false, null ,null ,null); Session queueSession = jmsConnectionHolder.getSession(); Queue queueSend = jmsConnectionHolder.getQueue( jmsConnectionHolder.getJmsEndpoint().getSend() ); Queue queueBrowse = jmsConnectionHolder.getQueue( jmsConnectionHolder.getJmsEndpoint().getReceive() ); MessageProducer messageProducer =queueSession.createProducer( queueSend ); TextMessage textMessageSend = queueSession.createTextMessage(); textMessageSend.setText( "jms message from groovy"); messageProducer.send( textMessageSend ); textMessageSend.setText( "another jms message from groovy"); messageProducer.send( textMessageSend ); QueueBrowser qb = queueSession.createBrowser(queueBrowse); Enumeration en= qb.getEnumeration(); while(en.hasMoreElements()){ TextMessage tm = (TextMessage)en.nextElement(); log.info tm.getText() } jmsConnectionHolder.closeAll()// don't forget to close session and connection