Monday, 30 April 2012

TOP SOA Interview Questions

"Where do you go for SOA Interview Question?", and asked that you contribute suggestions. This is a list of places that readers have recommended.


Saturday, 28 April 2012

Oracle SOA 11G Event Delivery Network

One of the most important feature in Oracle SOA Suite 11g is the Event Delivery Network (EDN), which is used to the Event Definition Language. Events are defined by using an XML-based language called the Event  Definition  Language. 


In this post I will implement the file adapter service to get information for employee details using a file, the data from this file is transformed and routed to Database Adatper, here two Mediators are involved one is Event Publishers and another one event subscriber 


The File Adapter Read the file and sent to the event publishers, the event subscriber receive the data from event publishers and sent to the Database Adapter. 

Tuesday, 24 April 2012

In Oracle SOA 11g, How to do Domain Value Maps

In Oracle SOA 11g When ever we integrate the two applications with different names and it gives same information. A general example one application contains a city name as Hyderabad and another application contains the same city name as Hyd, the both the applications are different domains. These type of situations we can use a domain value map between the two domains.  


How to create Domain Value Map

Sunday, 22 April 2012

In ORACLE SOA 11g BPEL Dehydration store table

A very important feature is dehydration in BPEL Service Engine in Oracle SOA 11g. This happens especially in asynchronous scenarios where a business process invokes a partner web service by using the invoke activity and then waits for the response by using receive activity or pick activity. While waiting for the response, the oracle engine can store the process in the database, thus someone activity the server resources. This process is called Dehydration.
When the engine receives the response, it first restores the process with its state from the database (hydration) and then continues with the execution of the process.
This data store is installed under db schema-ORABPEL Meta data includes bpel process descriptor, human task modelling data etc.
The database schema can be found in the DDL script domain_oracle.dll in the $ORABPEL$\ integration\orabpel\system\database\scripts directory.  

CUBE_INSTANCE Instance metadata information (creation date, current state, process ID)
CUBE_SCOPE Scope data for an instance
AUDIT_TRAIL Audit trail information for an instance; this information can be viewed from BPEL Console
AUDIT_DETAILS Large detailed audit information about a process instance
DLV_MESSAGE Callback message metadata
DLV_MESSAGE_BIN Payload of callback messages
INVOKE_MESSAGE Invocation messages metadata
INVOKE_MESSAGE_BIN Payload of invocation messages
DLV_SUBSCRIPTION Delivery subscriptions for an instance
TASK Tasks created for an instance (i.e. title, assignee, status, expiration)

Thursday, 19 April 2012

JMS Adapter Configuration

JMS Adapter Configuration

We can create JMS Adapter Configuration using the weblogic server console just open http://localhost:7001/console to start the weblogic server and Login 

For JMS Adapter Configuration we have three steps 

1. JMS Queue 
2. Connection Factory 
3. Connection Pool

1.JMS Queue 

In the weblogic console on the left side expand Services >> Messaging >> JML Modules 

Just Click on JMS Modules 

Click on SOAJMSModule

Click on New

Select the radio button on Queue 

Click Next 

Just Enter the Name in the Name field JMSConfigQueue and JNDI Name as JMS/JMSConfigQueue.

 Click on Next 

In the Subdeployments list items select the SOASubDeployment

In the JMS Server list select SOAJMSServer

Just Click on Finish.

Now JMS Queue was created successfully

Step2: Connection Factory 

Left side click on JMS Modules 

Click on SOAJMSModule

Click on New 

Select the Connection Factory 

Click on Next 

Enter the Name in the field as configCF and JNDI Name as jms/configCF

Click on Next 

Click on Finish 

Now completed the queue and connection factory you can see in the Summary of Resources Table 

Step-3: Now give the connection pool

on left side click on Deployments

Click on JMSAdapter (don't check the checkbox)

Click on the configuration tab and then the Outbound Connection Pools tab

Click on New 

Select the oracle.tip.adapter.jms.IJmsConnectionFactory factory.

Click on Next 

Enter eis/Queue/config

Select the the folder where plan.xml is saved 

Click on OK and save 

Now back to the Deployments 

click on the JMSAdapter 

click on the configuration and outbound connection pools 

Expand oracle.tip.adapter.jms.IJmsConnectionFactory 

Click on eis/Queue/config

Select ConnectionFactoryLocation on right side of text field and just enter jms/configCF and enter 

Click on Save 

Now go back to Deployments in the left side 

Select the checkbox of JMSAdapter

Click on Update on the top 

Select the Redeploy this application using the following deployment files:

Click on Next 

Click on Finish

Wednesday, 18 April 2012

Database Adapter Configuration

In this post how to configure the Database Adapter configuration using the weblogic Server console

To open the weblogic server on the browser in the Address bar type  http://localhost/console

Step1: Create Data Source
Step2: Give the connection to the Data Source by using connection pool

Step1:
In the console left side click on Service -> JDBC -> Data Sources

In that table click on NEW

Fill the data source information
  1. Name: DBConfig
  2. JNDI Name: JDBC/ DBConfig
  3.  Database Type: Oracle
  4. The Database driver defaults to the correct driver: Oracle's Driver (Thin XA) for Instance connections
Click on Next

Click on Next

Fill the database information:

  1. Database Name: XE (database SID)
  2. Host name: localhost
  3. port: 1521
  4. Database user name: system (what you created)
  5. Database user password: admin (what you create)
 
Click on Next 

Click on Test Configuration (Confirmation for success message)

Click on Next

Select the Target Servers : AdminServer, soa_server1 

Click on Finish

2. Step2

Click on Deployments 

Click on the DBAdapter

Click on the Configuration Tab

Click on the Outbound Connection Pools

Click on New

Select the radio button for javax.resource.cci.ConnectionFactory and click on Next 

Enter the JNDI Name as: eis/DB/DBConfig (It uses the when you give database connection in JDeveloper)


Click on Finish


Select the deployment plan location and click on the plan.xml


Click on OK 


Now Click on the configuration tab


Click on the Outbound Connection Pools


Expand the Outbound Connection Pool Configuration Table and click on eis/DB/DBConfig


In the properties table, select the box to the far right of xADataSourceName

Type your datasource name what you created JDBC/ DBConfig and Press the Enter key 

Select Save button to save the value

Click on the Deployments in the left side and select DbAdapter and select the checkbox 


Click on Update

Select Redeploy this application using the following deployment files:

click on Finish

Tuesday, 17 April 2012

What is WEB SERVICES

In this post i will give brief introduction about what is a WEB SERVICES? Why WEB SERVICES?
The realness of the SOA Web Services are designed to deliver information to a consumer, or depending upon the operation and will allow a consumer to request that the service manipulates underlying information. 

Moreover there are four standards which are core definition of a web service 
  1. Web Service Description Language (WSDL) 
  2. XML Schemas Definition Language (XSD)
  3. Extensible Markup Language (XML)
  4. Simple Object Access Protocol (SOAP)
WSDL is the overall service interface definition which is, the WSDL describes the name and location of the service, the operations exposed by the service, and expected input and output defined by the interface.

Web services are XML-based information exchange systems that use the internet for direct application to application interaction. These systems can include programs, objects, messages

Web Service Major Role
Service Provider : This is the service provider 
Service Requester : This is the Service Requester 
Service Registry : The registry provides a central place where developers can publish new services or find existing ones. 


Web Service Protocol
Service Transport: HTTP, SMTP, FTP
XML Message: SOAP
Service Description: WSDL (Webs service description language)
Service Discovery: UDDI (Universal Description, Discovery, and Integration)

Oracle Mediator

Oracle Mediator

In this post I will give brief introduction about Oracle Mediator. The Oracle Mediator gives to you lightweight framework to mediate between various producers and consumers of services and events.

In most of business application customer data is placed in particular place in different sources like enterprise application, business application, database and custom applications. The challenge of integrating this data can be met by using Oracle Mediator to deliver appropriate real-time data access to all applications that update or have a common interest in the same data.

Suppose Oracle Mediator Component can accept data contained in a text file from an application or service, transform it to a format appropriate for updating a database that serves as a customer repository, and then route and deliver the data to that database.

Oracle Mediator helps to integration between events and services where services invocation and events can be mixed and matched.

We can use Oracle Mediator of mediator component can evaluate routing rules, perform transformations, validate, invokes another service and raises another business event.

We can use a mediator component to handle returned responses, callbacks, faults and timeouts.

We can also use implement a variety of integration patterns such as service virtualization, publish and subscribe, fan-in, fan-out various synchronous and asynchronous request response patterns.


Friday, 13 April 2012

Oracle BPEL Correlation

Correlation


In BPEL correlation uses the impressive properties to assign global names to relevant data that is used for correlation message and to define aliases through which we specify the location of such data is present in messages.

The correlated messages are exchanged between business partners which can be defined by two roles
 
The first role partner that sends the first message which is invocation operation is initiator and it defines the values of the properties in the correlation set. 

The second role partner is followers and get the property values for their correlation sets from incoming messages.

The messages can be related to one or more correlation sets.


We can use correlation sets in invoke, receive, replay, onMessage
 
When you use the correlation with the receive activity we have to set the initiate to yes

When you use the correlation with the invoke activity and when the operation invoked is a request /response operation, we must specify the pattern attribute to indicate the direction in which the correlation applies. The request value specifies that the correlation applies to outbound messages, response to inbound, and request-response to both messages.