Topic
8 replies Latest Post - ‏2012-11-14T07:07:00Z by SystemAdmin
SystemAdmin
SystemAdmin
289 Posts
ACCEPTED ANSWER

Pinned topic Websphere ESB -Tibco integation issue

‏2012-11-02T07:51:48Z |
Hi,
We are doing an integration between websphere ESB 7.0 and Tibco EMS.We have added Tibco as a JMS provider in websphere and done the configurations needed for the integration (created jndi.properties file,added necessary jar, created queueConnectionFactory and queue on jms provider,added property factory on tibco).

Now, a simple mediation is created to send message from ESB to Tibco.Whenever a message is posted to a SI bus queue, mediation module picks that message and send it to tibco queue.We tested this mediation successfully.

Problem : ESB is not able to pick message from Tibco queue. We have created a Listener port to listen message from Tibco queue by giving the required fields in listener port. Again, we created a mediation to print the messages that ESB picks.In export we have used ‘Genric JMS binding’, and configured the name of listener port,jndi of qcf and queue.

We are not able to figure our why the mediation module is not picking up messages,
Are we missing something ?

Attached the doc we followed.

Please suggest. Thanks in advance.
Updated on 2012-11-14T07:07:00Z at 2012-11-14T07:07:00Z by SystemAdmin
  • SystemAdmin
    SystemAdmin
    289 Posts
    ACCEPTED ANSWER

    Re: Websphere ESB -Tibco integation issue

    ‏2012-11-02T09:20:45Z  in response to SystemAdmin
    Hi ,

    Did you use Connection factory while send the Message.if so,you create Activation Specification in WAS.And Restart WAS and try with activation specification.

    Thanks,
    • SystemAdmin
      SystemAdmin
      289 Posts
      ACCEPTED ANSWER

      Re: Websphere ESB -Tibco integation issue

      ‏2012-11-02T10:10:02Z  in response to SystemAdmin
      Thanks Ravi.
      Yes, I have used QueueConnectionFactory for sending the message.I also thought to create Activation Specification for receiving message but the problem is that Activation Specification can be created only for SI bus not for JMS provider (Tibco). I can't see any option to create Activation Specification in JMS provider. Attached screen.Also,in WAS-->Resources -->JMS --> Activation Specifications --> New , Tibco is not listed.

      Please let me know what I'm missing.

      Thanks a lot..
  • SystemAdmin
    SystemAdmin
    289 Posts
    ACCEPTED ANSWER

    Re: Websphere ESB -Tibco integation issue

    ‏2012-11-02T13:45:48Z  in response to SystemAdmin
    I think so ravi is write ,u should create an AS and if it is not wrkng try with MQJMS/MQ and as we can see AS tab is already there, u can use that tab for creating AS. It will work or else if u are getting any kind of error like native method not found somethng that means u r not passing the JMSType which represents operation name to be called.

    Cheers
    Prahlad
    • SystemAdmin
      SystemAdmin
      289 Posts
      ACCEPTED ANSWER

      Re: Websphere ESB -Tibco integation issue

      ‏2012-11-04T12:47:53Z  in response to SystemAdmin
      Thanks Prahlad,

      I'm not able to understand how we can create AS for JMS provider (Tibco). I can't find the option to create AS for Tibco.In my knowledge, there are only two options to create AS.

      1.Resources --> JMS --> JMS Providers --> select the JMS provider (Tibco) --> AS (Here, AS is not available, attached screen shot in my previous reply). So can't create AS.

      2. Resources --> JMS --> AS --> New --> Select Messaging provider (Here Tibco is not listed, attached screen shot). So can't create AS.

      Please let me know if there is some other way to create AS.

      Thanks a lot !
      • SystemAdmin
        SystemAdmin
        289 Posts
        ACCEPTED ANSWER

        Re: Websphere ESB -Tibco integation issue

        ‏2012-11-05T11:30:50Z  in response to SystemAdmin
        can you try with creating AS with default messaging provider,and use this AS for receive the message from Tibco.
  • SJC
    SJC
    2 Posts
    ACCEPTED ANSWER

    Re: Websphere ESB -Tibco integation issue

    ‏2012-11-05T13:29:55Z  in response to SystemAdmin
    Everything in the doc, plus what you've said you've done to configure a Listener Port, is the correct approach for integrating with any external messaging system whose JMS provider doesn't supply a compliant Resource Adapter (in a Resource Archive (.rar)). Only a JMS Provider which installs as a Resource Archive will use an Activation Specification.

    Can you see entries in the server log showing that the Listener Port is starting ok? It could be that you hadn't saved the config / restarted the server, or that the properties configured on the Listener are incorrect in some way (make sure you're using the jms/Queue JNDI names and not the external tibco JNDI names).

    If the LP is configured ok, starts ok, but doesn't pick up a message which arrives on the queue to which it is listening, then that's a deeper puzzle.

    There's also a difference between a scenario when the message delivery is never attempted ("failed to see there was a message"), and when one or more attempts are made to deliver the message, but (for various possible reasons) the message never makes it through to the application code (where a log message is output). In this second case I'd expect there to be some additional log output to show delivery attempts/failures.

    /Stephen
    • SystemAdmin
      SystemAdmin
      289 Posts
      ACCEPTED ANSWER

      Re: Websphere ESB -Tibco integation issue

      ‏2012-11-06T12:09:59Z  in response to SJC
      Thanks Stephen.

      Yesterday I noticed, I was getting exceptions in SystemErr.log during the deployment of my listener module. Here is the error stack :

      com.ibm.websphere.csi.CSITransactionRolledbackException:
      at com.ibm.ejs.csi.TranStrategy.commit(TranStrategy.java:966)
      at com.ibm.ejs.csi.TranStrategy.postInvoke(TranStrategy.java:233)
      at com.ibm.ejs.csi.TransactionControlImpl.postInvoke(TransactionControlImpl.java:570)
      at com.ibm.ejs.container.EJSContainer.postInvoke(EJSContainer.java:4558)
      at com.ibm.ejs.container.MDBWrapper.onMessage(MDBWrapper.java:111)
      at com.ibm.ejs.container.MDBWrapper.onMessage(MDBWrapper.java:136)
      at com.ibm.ejs.jms.listener.MDBWrapper.onMessage(MDBWrapper.java:242)
      at com.tibco.tibjms.TibjmsSession._submit(TibjmsSession.java:3567)
      at com.tibco.tibjms.TibjmsSession._dispatchAsyncMessage(TibjmsSession.java:1963)
      at com.tibco.tibjms.TibjmsSession._run(TibjmsSession.java:3054)
      at com.tibco.tibjms.TibjmsSession.run(TibjmsSession.java:4204)
      at com.ibm.ejs.jms.JMSSessionHandle.run(JMSSessionHandle.java:1045)
      at com.ibm.ejs.jms.listener.ServerSession.connectionConsumerOnMessage(ServerSession.java:1070)
      at com.ibm.ejs.jms.listener.ServerSession.run(ServerSession.java:567)
      at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1613)
      javax.ejb.TransactionRolledbackLocalException: ; nested exception is: com.ibm.websphere.csi.CSITransactionRolledbackException:

      After much debugging, I understood that the name of listener port should be same as generated by WID while creating 'Generic JMS Binding'.It should not be changed.I was giving a custom name while creating JMS binding and configuring it in websphere.After configuring the default LP (as created by WID), everything worked.

      If a meaningful exception was thrown it would have easy to debug.

      Thanks..
      • SystemAdmin
        SystemAdmin
        289 Posts
        ACCEPTED ANSWER

        Re: Websphere ESB -Tibco integation issue

        ‏2012-11-14T07:07:00Z  in response to SystemAdmin
        Hi,
        This error is not related to name of LP. If there are messages in queue while creating LP and deploying the module, this error will be thrown.So better consume the messages before creating the LP and deployment.

        Thanks..