Wednesday, 25 January 2012

FanOut Context in ESB


                          The Fan Out Context is used to store the current item of a repeating element when Fan Out is used in iterate mode. The Fan Out Context contains an integer field containing the index of the occurrence of the repeating element along with an element containing the occurrence itself. For instance, if there was a repeating element of an element called order, the Fan Out Context would look like as follow :

Tuesday, 24 January 2012

Shared Context in Websphere ESB

                   Context is a temparary area which is created along with Service Message Object (SMO) in the Mediation Flows. Shared Context is a type of context which is present in the SMO. Shared Context is mainly used when we are using Aggregation process where we need to Iterate the BO for Certain times. Shared Context maitains Aggregation data between  Aggregation (FanOut and FanIn) primitives. The Content (data) which is present in the shared context BO does not persist across Request and Response flows i.e The Data in the Shared Context which is used in Request flow can not be used again in Response flow.
                  The Shared Context is a thread-based storage area that's shared in the same thread. Shared Context provides a single memory area to store the data, that means single memory area used be all of the SMO Instances. We can say that the SMO is cloned at the start of each iteration between FanOut and FanIn primitives. Therefore the Shared context is need to provide a location where the aggregated information can be Build-Up during the Iterative process. After the Fan In primitive, it's expected that in most cases the flow performs a map/transform against the information in Shared Context to produce a new SMO body message type.

Websphere Integration Developer (WID) and Its Capabilities!

                        Websphere Integration Developer ( WID ) is a Eclipse Based Development Environment and  is used to Simplify and accelarate the Development of Applications, The IBM Websphere Integration Developer Environment provides a layer of abstraction that separates the visually presented components you work with from the underlaying implementation.
                     Websphere Integration Developer allows you to easily assemble SCA ( Service Component Architecture ) applications visually and generates the underlaying physical resources automatically. IBM WID includes a robust set of Test Components and fully functional Runtime Environment.
                     Websphere Integration Developer Assemble Business Solutions  using Adapters, Business Processes, code components, and Mediation Flows. and Services invoked by applications can be local or remote which may be written in various languages and may reside in various platforms.

We can Check the Capabilities of the Websphere Integration Developer with the following Image.

This can be checked by clicking Windows -> Preferences -> General -> Capabilities -> Select Advanced Button and choose Integration Developer then the it will be displayed as shown in this Image.



Here,
Core Integration Development provides tools, functions and related documentation for Development of  Bottom-Up Applications and services created.
Such as : Libraries, Business Objects and Interfaces.
Process Development  provides Advanced tools for Top-Bottom development of Integrated business solutions to create and test components.
Such as : Modules and Module Assemblies, Data Maps, Customized Visual Snippits, Processes, Business Rules and Human Tasks.
Mediation Development provides core Enterprise Service Bus integration development tools and also provides tools, functions and related Documents to Create and Test Mediation modules and Mediation Flows.


Thursday, 12 January 2012

SMO Structure in ESB

               ESB is an Entireprise Service Bus is a Desing time or programming period to help developers decompose complex problem into descreet units of functions. ESB Separates process logic from the integration logic.ESB provides Service Virtualization in handling the machanism of connecting service including Routing Messages, Convert Transport Protocols and Transforms Messages between Service Consumer  and Service Provider.

When we are working in ESB environment we need to understand the elements of Data representaions like SDO, BO and SMO.

SDO :  Is the fundamental data model used to SCA.
BO : Primary data structure for business data. it is extension of SDO model. and used to exchange data between application components.
SMO : Represent message operated on mediation primitives within Mediation Flow.

Structure of SMO :

Mainly devided into 3 parts, they are Headers, Context and Body.
 
Headers : It contains information of the import or Export Bindings. The headers type may following of types. 
                                                

Context :
Context is a scrach pad or a temparary area for the data which is passed between the mediation primitives. and it is used to maintained state data about runtime process activity.

Types of Contexts :
There some types of Contexts like Correlation, Shared, Trantient and failInfo.
Correlation context is used to maitained data in both Request flow or Response Flow.
Shared Context is used to maintained data in only Request or Response Flow.
FailInfo context is used to describe the Runtime Processing Exception.

Manipulation of SMO:
It can be done by using the XPath expression, XSL style sheets and  Java code.

List of Classes used to Manipulate SMO :
Package : com.ibm.websphere.bo
Classes :
BOFactory :To create an instance of BO.
BOXMLSerializer : To convert BO into XML.
BOCopy : To Copy BO into an other BO.
BOXMLDocument : Allows the manipulation of BO as an XML Document.







JCA Adapters and fuctionality in WID

             Adapters are SCA components and An Adapters integrates existing IT assets like EIS ( Enterprise Information Systems) with Business Integration Applications without any significant programming. Adatpters provides Transactional support, Asynchronous communication, connection pooling and Security beyond Webservices.

Types of Websphere Adapters:
Adapters are of two types 1.Application Specific Adapters and 2.Technology Specific Adapters. Application Specific Adapters connect to existing packaged applications like SAP, PeopleSoft.  Technology Specific Adapter provides connecivity through Technologies and Protocols like Flatfiles, JDBC, Email and FTP.

Advantages of Websphere Adapters:
*. It is based on Industry Standards and widely accepted by different vendors.
*.These are internally uses J2EE environment which is used for Connection pooling, End-to-End Java EE security Management and Distributed Transactions.

Adapters supports multithread and supports Tow kinds of Event Delivery. They are Ordered and UnOrdered Event Delivery.
Ordered Event Delivery is a Single Thread Delivers one event at a time.here events polled in which they were created.
UnOrdered Event Delivery is a Multi Thread Delivers  event at a time.here events polled in which they were created.

API's are used by Adapters to Expose service and Exchange Data b/w Services :
EMD  ( Enterprise Metadata Discovery) : Is used to Expose Servies and Business Objects to other Applications.
                         
DESPI ( Data Exchange Service Procider Interface ) : Is used to Exchange Data between Adapter Components and IBM Process Server Runtime.
                            

Event Polling for Inbound Adapters : 
Database trigger or script creates an event in the Event Table. then The adapter polls the event in Event table for New Item.  then the corresponding data will be retrived and placess into the queue to start the process. once the data is processed then adapter removes that event from the event table and placess into Archive. Then from that Archive table these events will be deleted by some manual scripts.