Siebel EAI >  Siebel and WebLogic JMS Queue Integration

Siebel – WebLogic JMS Queue Integration

This article will show you how to integrate Siebel with WebLogic JMS Queue.
You need two jar files from Siebel, from the siebsrvr folder.
Siebel.jar and SiebelJI_lang.jar
_lang ist he language. If you are using English Siebel, the filename is siebelUI_enu.jar. If you are using German, it is siebelUI_deu.jar

These two jar files can be obtained from the Siebel installation directory. E.g.

SIEBEL_HOME\15.6.0.0.0\ses\siebsrvr\CLASSES
Copy these files to a separate folder e.g. D:\JMS
You can have only one JVM loaded in a process, and therefore only one JVM subsystem in a process. If you try to load more than one JVM subsystem into a process, an error will occur.
You need another file called wlfullclient.jar
You can go here to check how to create wlfullclient.jar

http://docs.oracle.com/cd/E12840_01/wls/docs103/client/jarbuilder.html
You also need these files
wlfullclient.jar, core-jms.jar, jms.jar,javax-jms.jar
They come in Weblogic server installation directory.

Create the jndi.properties file on the Siebel Server in the D:\JMS directory.

The jndi.properties file specifies the connection values that the Siebel Server uses to look up queues and their connection factories dynamically.

Specify the following values for the jndi.properties file:


java.naming.factory.initial=weblogic.jndi.WLInitialContextFactory
java.naming.provider.url=Weblogic ipaddress and port name
java.naming.security.principal=weblogic server username
java.naming.security.credentials=Password for Weblogic

java.naming.factory.initial should always be weblogic.jndi.WLInitialContextFactory
Lastly you will need a file called tools.jar.
This comes with the JDK installation.
We need to create 3 Profiles

Creation of JVM Subsystem Name

Navigate to Administration – Server Configuration -> Enterprises -> Profile Configuration
Create a Named Subsystem JAVA which will provide JVM Setup details on Siebel Server.

JVN Subsystem

JVM Classpath
= D:\sba81\siebsrvr\CLASSES\QueueAccess.jar;D:\sba81\siebsrvr\CLASSES\jms.jar; D:\sba81\siebsrvr\CLASSES\jta.jar;D:\sba81\siebsrvr\CLASSES\jmxri.jar; D:\sba81\siebsrvr\CLASSES\dms.jar;D:\sba81\siebsrvr\CLASSES\Siebel.jar; D:\sba81\siebsrvr\CLASSES\SiebelJI_deu

JVM DLL Name =
C:\Programme\Java\jre6\bin\client\jvm.dll

JVM Options =
-Xrs -Djava.compiler=NONE –Xms64m -Xmx256m

 


Creation of JMS Receiver Component

Navigate to Administration – Server Configuration -> Enterprises -> Component Definitions

Siebel Component Definitions


For receiving data from JMS queue we need to create a server component.

This component comprises of a JVM subsystem (JAVA profile), a receiver connection subsystem

(which contains the queue name and credentials of weblogic system) and a data handler

(which contains the name of the workflow for receiving the data in Siebel).

We need to set few parameters in it
Receiver Method Name- Method of the Business Service to be used. Here we have used ReceiveDispatch method
Receiver Service Name- iebel provided Business Service (EAI JMS Transport)
JVM Subsystem Name- JAVA
Receiver Connection Subsystem- We have to create a subsystem Customer_JMS_Receive.
Receiver Data Handling Subsyst- We have to create a datahandler Customer_JMS_Datahandler.
Default Tasks = 1


Creation of Receiver Connection Subsystem

Siebel receiver connection subsystem

 

Go to profile configuration tab again and create a named subsystem Customer_JMS_Receive and provide following parameters as per your setup. All details for this subsystem came from weblogic.
ConnectionFactory name- <name of your connection factory>
ConnectionUsername- weblogic
ConnectionPassword- <password>
ReceiveQueue name- <provide details from weblogic>
ReceiveUsername- <provide details from weblogic>
ReceivePassword- <provide details from weblogic>
SendQueue name- <provide details from weblogic>
SendUsername- weblogic
SendPassword- <provide details from weblogic>

We do not need to change the other parameters.


Creation of Receiver Data Handling Subsystem

 Siebel Reciever Data handling system

 You need to add only these Profile Parameters

Allow Anonymous = False

Service Method to execute = RunProcess

Service to execute = Workflow Process Manager

Workflow Process to run = JMS

Impersonate = False