Thursday, 10 May 2012

Activities in BPEL

Activities are most useful for BPEL Process all activities are drag and drop to BPEL Service Component BPEL process consist of BPEL Assign activity, BPEL Invoke Activity, BPEL Receive activity, BPEL Assign activity , BPEL Switch Activity, BPEL While Activity, BPEL Transform Actvity


BPEL Assign Activity used for to control the data, copy the content one variable to another.


BPEL Transform Activity which is also one type of assign activity which is uses the XSLT to map the elements source format to target format which performances more faster than assign activity. XSLT (Xexntesible Stylesheet Language Transformation) which transform the data one element to another element of other documents. 


How to control the process by using switch, while, flow, Flown activities, "Switch Activity" used for implementing conditional branches, "While activity" used for implementing loops, "Flow activity" is used for implementing branches in Parallel, "FlowN activity" is used for run time Parallel branches decides on server side it means dynamic parallel branches.


"BPEL Invoke activity" used for invoke the services, which identify the partner link and specify the operation


"BPEL Receive activity" is used for asynchronous callback response from partner link of service.


BPEL Scope Activity used for manipulating the faults, events, compensation and correlation sets. Scope Activity used for simplifies BPEL process flow. 


BPEL Wait Activity used for pause the process for a period of time.


BPEL Empty Activity does not do anything but syntax is required for feature of BPEL Process but which is not perform any activity.

Tuesday, 8 May 2012

What is BPEL Process in SOA

"What is BPEL Process in SOA?", (Business Process Execution Language) BPEL Process is a language used for the composition, orchestration and coordination of webservics.  In this post we will explain BPEL, define the BPEL role with regard to Service Oriented Architecture and explain the process-oriented approach to SOA and the role of BPEL. 


In BPEL the Enterprise application and information systems have become more more fundamental assets to companies. The Companies are trust on them to be able to perform business operations. 

Sunday, 6 May 2012

What is SOA Principles

In this post you will get any idea of what is SOA principles, SOA Principle defines the framework in which consumers and services will collaborate and acts as general guidance for the design and development of services. There are number of principles that can be applied to an SOA. 
  • Loose Coupling 
  • Interoperability 
  • Reusability 
  • Discoverability 
  • Governance 
Loose Coupling 
"What is SOA" "Why need SOA" you just raise question raise your self? the answer is Loose Coupling. Loose coupling principle, consumers and services do not communicate directly consumers and services communicate via messaging. Using a message to exchange request and replies avoids any direct technical connections between consumers and services. In addition to messaging, there are other service interface design techniques that can be applied to further limit the degree of coupling between consumers and the service.


Messages exchanged between consumers and services are realizations of the service interface. In the case of a Web service the service interface is defined by the combination of Web service Definition Language artifact and xml schem definition as its referenced metadata. These two types of interface artifacts are the foundation of any web services. The design and development of these two interface artifacts are a focus of the loose coupling principle. 








In SOA, a service may invoke a set of database activities as part of its behavior. However this is not a limitation. Through the service operations, a service could also provide computational, presentation, transformation, and other types of behavior. Regardless of the functionality provided by the service, the loose coupling principle must be applied. 


Interoperability 


Interoperability is one more type of "what is SOA" principle that eliminates technology specificity and constraints that may prohibit, restrict, or constrain the ability to collaborate in the soa. 
Interoprability allows consumers and services that are developed and platformed on different technologies to exchange information and collaborate. That is service might be developed using java, platformed on a server using the Linux operating system, and accessing an Oracle database. Consumers of this service might be developed using Visual C++ or even COBOL. They might run on Windows platforms or mainframe MVS platforms. The variations and possibilities are almost endless. A core tenet of SOA is to allow these consumers and services to collaborate, regardless of the technology on which they are based. 


Reusability 
The principle of "What is SOA" is reusability  to design and develop with an emphasis on cost avoidance. A service that is designed and developed to support the loose coupling and the interoperability principles is likely a good candidate for reuse. That is , original consumers as well as new consumers can exploit the functionality of the service. As new consumers express their requirements and where those requirements can be met by the functionality of the existing service, they can avoid having to design and develop yet another new service.

Discoverability 
Finding a service is the first step to service reuse and consumption. Even though a service might provide extensive functionality, it is largely ineffective if the service cannot be discovered for later use.
It contains published information about a service. A typical commercial service registry technology also includes some form of search or find capability. This allow designers and developers to search for already developed services as candidates for reuse.

Governance 
A successful SOA  and services implementation will incorporate services and services artifacts that comply with the loosely coupled, interopreable, reusable discoverable principles. SOA governance will provide the rules and framework from which compliance to these principles can be measured and identify opportunities for appropriate remediation of noncompliance. Some SOA practitioners might argue that governance is a process or a practice, rather than a principle, contend that to implement an effective SOA, governance is more fundamental and crosses the lifecycle of SOA. 

Saturday, 5 May 2012

What is Service Oriented Architecture (SOA) definition

In this post I will explain what is SOA, why SOA is required for next IT generation ,these are the questions comes to you when you learn SOA.

A service-oriented architecture (SOA) is a combination of consumers and services that collaborate, is supported by a managed set of capabilities is guided by principles, and is governed by supporting standards. 


Consumers and services are all participants and collaborators in an SOA. Which is they interact with one another to request services and resolve these requests. The context for these interaction is determined by the service interface and is typically expressed as a message that moves between the collaborators.


In Service-oriented architecture consumer is technology that in some manner interacts with, consumes, and exploits services. Typically and within the definition of an SOA, a consumer is an application or piece of software that will interact with another application or piece of software as a service or possibly as an intermediary. While SOA consumers are generally software, this is changing, and we'll begin to see more appliance and hardware SOA consumers. 



SOA Consumer and Service 


From an SOA perspective the service is generally some set of application functionality. The provider of the service may be a combination of the service behavior and the location at which it is identified and invoked. Again using the office supply analogy, the service being offered is that of returning the available inventory for an item. In this regard, the office supply store is know as the service provider. The interaction between the consumer and the service is enabled by a request for the available inventory position of an item and the inventory count returned in the reply. 








In Service-Oriented Architecture interesting extension of the consumer and service definition is that of an intermediary. As implied by the name, an intermediary is positioned somewhere between a consumer and a service. Note that this is logical positioning, and the physical or network locations of the consumers, services and intermediaries can vary. An intermediary may provide some form of service behavior, or it may just mediate between other consumer and services. If we carried our office supply analogy further, an example of an intermediary might be a discount retailer. The customer interacts directly with the discount retailer, and the retailer then works with the office supply company on behalf of the consumer. 


In service oriented architecture a consumer interacts with an intermediary rather than directly with the service. Depending upon the perspective and direction of the interaction, an intermediary can hold similar roles of both a consumer and a service when following the interaction from the consumer to the intermediary, the intermediary can be thought of as the target of the interaction or even as logical extension of the service. When following the interaction from the intermediary to the service, the intermediary can be thought of as an originator of the request or logically as a consumer of the service. 


This front end such as mediation service, wrapper service might be another separate application that does nothing but mediate the interaction between consumers and the existing application. In this mediation service acts as an intermediary between service consumers and the legacy application.


 One every important point to remember is that with any interaction the service interface  is a critical component. It describes the rules by which the SOA participants and collaborators interact, and it also defines the context of that interaction as one or more messages. 

Thursday, 3 May 2012

ORACLE BPEL Interview Questions

  1. What are the Major Elements in WSDL?
  2. Explain about SOAP Structure?
  3. Can you describe about SOA Governance? 
  4. What are the BPEL activities? 
  5. Difference between pick activity and receive activity? 
  6. Difference between Complex Type and Simple Type? 
  7. Difference between while activity and pick activity?
  8. What is the use of pick activity? 
  9. What is the use of correlation?
  10. Difference between synchronous and Asynchronous process?
  11. What is end point URI?
  12. What is dehydration storage tables?
  13. What is automated roll-back?
  14. In Oracle SOA 11g What is difference between imports & Include?
  15. What is choeeography?
  16. How to make partner link Dynamically?
  17. What is synchronous file read ?
  18. Can I import two xsd files which are having same elements and same file name?
  19. What is transient and durable BPEL?
  20. In database adapter configuration difference between XA data source and non-XA data source?
  21. can explain Plan.xml ?

Wednesday, 2 May 2012

Oracle SOA Interview Questions and Answers

1. Explain About Web service?


Web service is type of software system which is used for exchange the data and use information from one machine to another machine through network. Generally Web services based on the standards such as TCP/IP, HTTP, Java, HTML and XML.


Web services are pure xml based which is used for exchange information through Internet to direct application to application interaction. These systems include programs, objects, messages or documents.

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.