Showing posts with label Siebel. Show all posts
Showing posts with label Siebel. Show all posts

Tuesday, May 8, 2012

Session Management/Pooling While Integrating SOA With Siebel

Oracle SOA Integrations with Siebel require some kind of session management/pooling to be taken care of. In most common scenarios you maintain Siebel sessions from SOA layer by opening session, making subsequent calls to Siebel webservices and closing the session explicitly. There are other cases also where you may want do some session pool management within SOA by storing the session details (say custom DB table) and maintaining a count of the number of open sessions.

In this post I will cover the common approach of handling siebel sessions in Integration, it follows 3 basic steps:

1. Call a Siebel Session WSDL which supports some kind of ping method/operation and pass username, password and session type ("stateless") in SOAP Header to open a session on Siebel side. Siebel will respond back with a Session Token.
2. Use the session token along with session type ("stateless") while making subsequent call to Siebel wsdl for successfully connecting to the opened session.
3. Finally to close the session explicitly, send session token along with session type as "None".

A sample SOAP Header for request sent to Siebel is as below:
 <soap:header xmlns:wsa="http://www.w3.org/2005/08/addressing">
          <usernametoken>xxxxx</usernametoken>
          <passwordtext>xxxx</passwordtext>
          <sessiontype>Stateless</sessiontype>
 </soap:header>
A sample SOAP Header for response received from Siebel is as below:
<soap:header>
  <sessiontoken>xxxxxx</sessiontoken>
</soap:header>
Incase Siebel SessionToken expires before making subsequent calls, Siebel will respond back with some error message like Invalid Session Token or Session Timed Out or Session Token has expired. In these cases just reconnect to Siebel by making another call to the Ping method to generate a new session token. The Old session generated on Siebel side will eventually timeout and won't waste any resources as such.

That's it ! You should be good to create sessions and make successful calls to Siebel now.

Wednesday, May 18, 2011

Siebel to SAP R/3 Integration Approaches

I was recently evaluating various approaches to integrate Siebel and SAP R/3 systems especially using Oracle SOA Suite. Siebel already provides a Siebel EAI Connector for SAP R/3. This is a tight coupling between Siebel and SAP R/3. If you are planning to use Oracle SOA Suite, it provides the iway adapter for both Siebel and SAP R/3 end systems which makes it possible to decouple the 2 end systems and integrate them. Both approaches are explained below.

Siebel EAI Connector for SAP R/3

The Siebel EAI Connector for SAP R/3 provides connectivity using BAPI and IDOC transport adapters, and predefined business processes. Using the connectors, you can exchange customer, order, and product information between a Siebel application and SAP. This leverages Siebel Workflow and Business Service data maps which are the transformations for the data entities like (Account in Siebel to Customer in SAP or Product in Siebel to Material in SAP). There are some pre-built integrations between common business processes and it also allows custom integrations to be built.














More details can be found in below link:
http://download.oracle.com/docs/cd/B31104_02/books/PDF/ConnSAP.pdf

Integrating using Oracle Siebel Adapter

We can also leverage Oracle Fusion Middleware and the available iway adapters for Siebel and SAP end systems. Ensure that the Siebel Business Services (WSDL) or Business Objects (XSD) are available from Application Explorer for WSDL/XSD generation. Similarily ensure that the SAP BAPIs/IDocs are available in Application Explorer for WSDL/XSD generation. After that you can create the fusion processes to integrate the 2 end systems.

Below is a screenshot from Application Explorer once you create a target and connect to Siebel system.











More details about this approach can be found in below link:
http://download.oracle.com/docs/cd/E14571_01/doc.1111/e17056/intro.htm#i1013615

I have covered details about SAP integration with SOA Suite in my earlier posts
Receiving idocs in BPEL
Invoking BAPIs from BPEL

Saturday, July 24, 2010

Oracle SOA Suite integration with Siebel

I will be shortly starting work on SOA Suite 11G integration with Siebel and was doing some initial study on the various ways to integrate with Siebel system.

  • For inbound integrations, Siebel CRM does support native webservices and exposes a number of functions as webservice end points (also know as Application Service Interfaces or ASIs). It provides tool for generating these WSDLs which can be consumed by SOA Suite components like BPEL.
  • For outbound integrations, we can use JMS and Oracle AQs. Basically Siebel publishes the message to JMS queue and a consumer picks up the message to process it onwards.

A couple of good reference posts from OTN are:

Will be sharing more details about Integration with Siebel systems in coming weeks...stay tuned.