6 Replies Latest reply on Nov 13, 2008 4:12 AM by Davide ant

    Oracle RAC JMS Provider

    Davide ant Newbie

      Hi,
      when i configure jbossEsb for work with oracle i have only one address, one port etc etc.
      In my network i have an Oracle rac with two nodes.
      It's possible configure jboss Esb configuration file for connecting with oracle rac?

      Thanks.

        • 3. Re: Oracle RAC JMS Provider
          Davide ant Newbie

          thanks for the answer,
          but a jms connection in Oracle AQ in Esb is made by a custom class with only one host in property.

          <jms-provider name="JBossMQ" connection-factory="QueueConnectionFactory">
           <property name="java.naming.factory.initial" value="org.jboss.soa.esb.oracle.aq.AQInitialContextFactory"/>
           <property name="java.naming.oracle.aq.user" value="kurt"/>
           <property name="java.naming.oracle.aq.password" value="kurt"/>
           <property name="java.naming.oracle.aq.server" value="barentz"/>
           <property name="java.naming.oracle.aq.instance" value="OSC"/>
           <property name="java.naming.oracle.aq.schema" value="kurt"/>
           <property name="java.naming.oracle.aq.port" value="1521"/>
           <property name="java.naming.oracle.aq.driver" value="thin"/>


          • 4. Re: Oracle RAC JMS Provider
            Daniel Bevenius Master

            Hi,

            I don't think this is possible at the moment. If I understand this correctly you need the ability to specify a connection url instead of the individual properties as described in the post referred to by noelo.

            Would be willing to try this out for me?
            If I send you an modified org.jboss.soa.esb.oracle.aq-4.2.jar could you try specifying:

            <jms-provider name="OracleRealApplicationCluster" connection-factory="QueueConnectionFactory">
             <property name="java.naming.factory.initial" value="org.jboss.soa.esb.oracle.aq.AQInitialContextFactory"/>
             <property name="java.naming.oracle.aq.url" value="jdbc:oracle:thin:@(description=(address_list=(load_balance=on)(failover=on)(address=(protocol=tcp)(host=host1)(port=1621))(address=(protocol=tcp)(host=host2)(port=1621)))(connect_data=(service_name=SID)(failover_mode=(type=select)(method=basic))))"/>
             <property name="java.naming.oracle.aq.user" value="username"/>
             <property name="java.naming.oracle.aq.password" value="password"/>
            


            If you could try this send me an email and I'll send you the updated jar.

            Thanks,

            /Daniel



            • 5. Re: Oracle RAC JMS Provider
              Davide ant Newbie

              Many thanks Daniel,
              I have mailed.

              Regard.

              Davide.

              • 6. Re: Oracle RAC JMS Provider
                Davide ant Newbie

                Hello everyone,
                with the help of Daniel, I was able to successfully connect to Oracle RAC:
                This is the string jdbc that I tested and running:

                <jms-provider name="OracleRealApplicationCluster" connection-factory="QueueConnectionFactory"
                 jndi-context-factory ="org.jboss.soa.esb.oracle.aq.AQInitialContextFactory">
                 <property name="java.naming.factory.initial" value="org.jboss.soa.esb.oracle.aq.AQInitialContextFactory"/>
                 <property name="java.naming.oracle.aq.url" value="jdbc:oracle:thin:@(DESCRIPTION=(LOAD_BALANCE=on)(FAILOVER=on)(ADDRESS_LIST=(ADDRESS=(protocol=tcp)(host=host1)(port=port1))(ADDRESS=(protocol=tcp)(host=host2)(port=port2)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=ISTANCE)))"/>
                 <property name="java.naming.oracle.aq.user" value="USER"/>
                 <property name="java.naming.oracle.aq.password" value="PASSWORD"/>


                It 'opened a jiira on this issue:
                https://jira.jboss.org/jira/browse/JBESB-2187


                Thank you.

                Davide