1 Reply Latest reply on Feb 25, 2013 1:45 PM by LuixPT

    Unable to establish an outbound connection with Connection Factory

      I'm an trainee (only two weeks old so bear with me please :) ) in a company's Integration and Middleware department and my task was to research and implement a solution to migrate an AQ service from 10g to 11g.
      We are running WebLogic Server Version:
      Using an already existing db and this tutorial [https://blogs.oracle.com/soaproactive/entry/jms_step_6_how_to] I implemented the following components:

      Weblogic DATA Source
      •     Name: AIA_AQ_jmsuserDataSource
      •     JNDI Name: jdbc/AIA_AQ_jmsuserDataSource
      •     DBType: Oracle
      •     DB Name: VAIAD

      JMS System Module
           Name: AIA_AQ_JmsModule

      Foreign Server
           Name: AIA_AQ_JmsForeignServer
           Properties: datasource=jbdc/AIA_AQ_jmsuserDataSource

      Connection Factory
           Name: AIA_AQ_JmsFSConnectionFactory
      Local JNDI Name: AIA_AQ_JmsFSConnectionFactory
      Remote JNDI Name: XAQueueConnectionFactory ??? *(I don't know if this was the correct way to name it, I just followed the website's recommendation regarding Oracle's Best Practices)*

      Foreign Destination
           Name: AIA_AQ_JmsForeignDestination
      Local JNDI Name: aq/AIAAQ
      Remote JNDI Name: Aq/AIAAQ
      My JNDI Tree Structure is as follow:
      ---->AIA_AQ_JmsFSConnectionFactory *(which has the following warning "Cannot resolve name:aq/AIAAQ/XAQueueConnectionFactory")* <--- I suspect the error is here
      This is the error log of the service trying to connect to the Connection Factory:

      <txt>JCABinding=> ScratchCardAQueueProducer:AIASystem.EBS.ScratchCardAQueueProducer [ Enqueue_ptt::Enqueue(Envelope) ] Could not invoke operation 'Enqueue' against the 'null' due to: </txt>
      JCA Binding Component connection issue.
      JCA Binding Component is unable to create an outbound JCA (CCI) connection.
      ScratchCardAQueueProducer:AIASystem.EBS.ScratchCardAQueueProducer [ Enqueue_ptt::Enqueue(Envelope) ] : The JCA Binding Component was unable to establish an outbound JCA CCI connection due to the following issue: BINDING.JCA-12510
      JCA Resource Adapter location error.
      Unable to locate the JCA Resource Adapter via .jca binding file element &lt;connection-factory/>
      The JCA Binding Component is unable to startup the Resource Adapter specified in the &lt;connection-factory/> element: location='aq/AIAAQ/AIA_AQ_JmsFSConnectionFactory'.
      The reason for this is most likely that either
      1) the Resource Adapters RAR file has not been deployed successfully to the WebLogic Application server or
      2) the '&lt;jndi-name>' element in weblogic-ra.xml has not been set to aq/AIAAQ/AIA_AQ_JmsFSConnectionFactory. In the last case you will have to add a new WebLogic JCA connection factory (deploy a RAR).
      Please correct this and then restart the Application Server

      Please make sure that the JCA connection factory and any dependent connection factories have been configured with a sufficient limit for max connections. Please also make sure that the physical connection to the backend EIS is available and the backend itself is accepting connections.


      Any insight to why the structure isn't communicating like it should would be a lifeline to my situation.
      Thank you.
        • 1. Re: Unable to establish an outbound connection with Connection Factory
          Problem solved,
          The problem was that the Foreign Destination had the wrong infortmation about the queues existing in the db. Plus the existing queue had the "Enqueue" property disabled.
          So the solution is to go to your db, see the created queue info, and paste it to the Foreign Destination like so:

          Name: AIA_AQ_JmsForeignDestination
          Local JNDI Name: queue/AIA_SCRATCHCARD_AQUEUE
          Remote JNDI Name: Queues/AIA_SCRATCHCARD_AQUEUE ---> ATTENTION to the s on queues_

          Edited by: 989515 on 25/Fev/2013 5:44