Thursday, 17 November 2011

Connecting Oracle SOA Suite to Java CAPS JMS

Following a number of recent requests about connecting SOA Suite to existing SeeBeyond / Sun JMS I decided to put together this quick blog entry that describes the simple configuration required to successfully achieve this. The entry is based on a short document I originally wrote that described alternative connection options but JMS seems to be the most popular.

The key to connecting SOA Suite to STCMS (SeeBeyond JMS) is collecting the correct information about your JMS Instance and tracking down the appropriate jar file. This blog assumes the reader is running Java CAPS, but the concepts are the same for ICAN and e*Gate, and we will be simply using a Mediator to write a message to a JMS Queue.

Select JMS Adapter and then ThirdParty

Step 1
Edit the factory properties as follows:

  • java.naming.provider.url : stcms://jcapsserver:18007
  • Administrator
  • STC
Now configure the JMS Connection information.

  • JMS Connection Factory : connectionfactories/queueconnectionfactory
  • JNDI Name : eis/Jms/JmsAdapter/Stcms/qLogging
Step 2

Configure Message (Adapter)

Once the configuration is complete we need to define the Adapter Interface and in this example we will simply specify that we will specify it later. We do this because within the STCMS we will simply be passing an Opaque Type (Text Message).

Step 3

Define Operation

Because we will be writing to the Queue we will define the Operation as a Produce Message.

Step 4
Following this we will need to define the define the actual STCMS Queue name which is prefixed by jms/ to locate it within the Java CAPS server.

Step 5

Define Message

Because we will be writing a simple log string to our Queue we will define the Message structure as Native format.

Step 6

Mediator Configuration

We can now simply connect the JMS Connector to the Mediator as follows :

Step 7
To successfully write to the Queue we will need to define the following properties for the connection:

Open Mediator and edit new service information. In Assign Values Set :

  • jca.jms.JMSType = TextMessage
  • jca.jms.JMSCorrelationID = 1234567890
Step 8
Now we can simply copy contents to the Inbound on the Queue connection and these will be available for Java CAPS.

No comments:

Post a Comment