Configuring JMS nodes to communicate with Oracle AQ

You can configure the JMS nodes to communicate with Oracle AQ (Oracle 11g and above). This communication requires an LDAP 3 compliant server to hold definitions for JNDI lookup by the JMS nodes.

About this task

Procedure

  1. Complete the following steps in Oracle AQ, referring to Oracle documentation for the specific details of each step.
    1. You must install the Oracle Internet Directory Server (OID) to host the JNDI administered objects for Oracle AQ.
      • You can configure Oracle AQ to register JMS connection factories and destinations (queues and topics) automatically with the OID server when these JMS connection factories and destinations are created in the Oracle database.
    2. Create the database tables to hold the JMS queues and topics.
    3. Create the JMS queues and topics and associate them with the tables created in step 1b.
  2. Add definitions for the JMS connections to the LDAP server to permit the integration node JMS nodes to complete JND lookup and connect to the Oracle AQ server.
    1. Register JMS connection factories with the OID LDAP server by using the administrative tools provided by Oracle.
    2. The following diagram describes the shape of the directory tree for JNDI administered objects for Oracle AQ.Oracle AQ in LDAP
  3. Copy the Oracle AQ JMS client JAR files to a local directory that is accessible by the integration node.
    • The aqapi.jar file is found on the Oracle AQ server in directory oracle_install_path/rdbms/jlib.
    • The ojdbc5.jar file is found on the Oracle AQ server in directory oracle_install_path/jdbc/lib.
    • The orai18n.jar found on the Oracle AQ server in directory oracle_install_path/jlib.
  4. Modify the JMS Providers policy for Oracle AQ to identify the location of the Oracle JAR files.
  5. Configure the properties on the JMS Connection tab of the JMS node (input, output, or reply node) as shown in the following example. For more information about these properties, see JMSInput node.
    • Set the JMS provider name property to Oracle_AQ.
    • Set the Initial context factory property; for example:
      com.sun.jndi.ldap.LdapCtxFactory

      For all nodes that refer to the JMS Providers policy, if this property is set on the policy, it overrides the property that is set on the node.

    • Set the Location JNDI bindings property; for example:
      ldap://LDAP_server_address:LDAP_listener_port

      For all nodes that refer to the JMS Providers policy, if this property is set on the policy, it overrides the property that is set on the node.

    • Set the Connection factory name property. This name must be the fully qualified path in the LDAP directory; for example:
      cn=QCF,cn=oracledbconnections,cn=ORCL,cn=OracleContext,
      ou=MyDept,o=MyCompany
      Where
      • cn=QCF is the JMS connection factory name.
      • cn=oracledbconnections is the branch for JMS connection factory definitions.
      • cn=ORCL is the Oracle AQ database name.
      • cn=OracleContext is the root of the Oracle RDBMS schema.
      • ou=MyDept, o=MyCompany is the installation-specific LDAP administrative context.
  6. On the Basic tab, configure the JMS destinations (queue or topic) properties.
    • Set the Source queue property on the JMSInput node. This queue must be the fully qualified path in the LDAP directory; for example:
      cn=JMS.Queue,cn=oracleDBQueues,cn=ORCL,cn=OracleContext,
      ou=MyDept,o=MyCompany
      Where
      • cn=JMS.Queue is the JMS queue.
      • cn=oracleDBQueues is the branch for JMS queues and topic definitions.
      • cn=ORCL is the Oracle AQ database name.
      • cn=OracleContext, is the root of the Oracle RDBMS schema.
      • ou=MyDept, o=MyCompany is the installation-specific LDAP administrative context.
  7. Before the message flow starts, ensure that the JMS connection has been established by using the Windows Event Viewer.