Forum Discussion

ramjisro's avatar
ramjisro
New Contributor
14 years ago

Problems sending a request on TIBCO EMS

I'm trying to get soapUI 3.6.1 working with our TIBCO EMS infrastructure and am not having any luck sending a request. I've already go Hermes configured and it can browse, put and get messages from the queue on which I'm trying to send a request.

I've copied tibjms.jar and tibjmsadmin.jar to bin/ext and restarted soapUI.

Stack trace for the exception that I'm getting is below. It almost appears that soapUI isn't connecting to EMS with the username and password with which Hermes has been configured. Can someone confirm that soapUI does indeed use the username and password from Hermes?

Thu Jan 13 14:32:37 EST 2011:ERROR:javax.jms.JMSSecurityException: Not permitted
javax.jms.JMSSecurityException: Not permitted
at com.tibco.tibjms.Tibjmsx.buildException(Tibjmsx.java:549)
at com.tibco.tibjms.TibjmsSession._createProducer(TibjmsSession.java:714)
at com.tibco.tibjms.TibjmsSession.createProducer(TibjmsSession.java:4012)
at com.eviware.soapui.impl.wsdl.submit.transports.jms.HermesJmsRequestTransport.messageSend(HermesJmsRequestTransport.java:257)
at com.eviware.soapui.impl.wsdl.submit.transports.jms.HermesJmsRequestSendTransport.execute(HermesJmsRequestSendTransport.java:42)
at com.eviware.soapui.impl.wsdl.submit.transports.jms.HermesJmsRequestTransport.sendRequest(HermesJmsRequestTransport.java:84)
at com.eviware.soapui.impl.wsdl.WsdlSubmit.run(WsdlSubmit.java:123)
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

2 Replies

  • ramjisro's avatar
    ramjisro
    New Contributor
    Had a look at the code this morning and realised the soapUI doesn't pick the username and password up from the definition in Hermes but uses the username and password that are provided with the request definition in soapUI. Once I set those correctly, everything worked just fine.
  • ramjisro's avatar
    ramjisro
    New Contributor
    Spoke too soon earlier. You need to build a patched version of soapUI if your provider is TIBCO BusinessWorks. Here's what I discovered:

    To use EMS as a transport in soapUI, you need to copy tibjms.jar and tibjmsadmin.jar to $SOAP_UI/bin/ext and restart soapUI.

    When using EMS, you need to specify the login and password for EMS on the Aut tab of the request. You're better off to create a separate request for your JMS requests and you HTTP requests.

    The SOAPSendReply activity in BusinessWorks (5.5) doesn't really honour the JMSReplyTo that's specified on the request - it can only send replies to temporary queues.

    soapUI 3.6.1. doesn't support the use of temporary queues for replies although there is a patch available on the forums at viewtopic.php?f=5&t=3145&p=16812&hilit=tibco+ems+temporary+queue#p16812