BPEL Hello World

BPEL and SCA are all the rage now a days – with almost every vendor trying to show off their capabilities in the SOA integration world making the development and maintenance of integration as smooth as possible. In this article, we are going to see how Oracle’s implementation of SCA and BPEL works by taking a look at the age old Hello World example that we all know and love.

Please refer to the Hello World program article under Architecture section to understand why we should start learning Oracle BPEL with a Hello World Tutorial and its advantages. What we will understand in this article would be the development, execution and conclusion parts of Oracle BPEL Hello world program.

Contents of this article are

Develop Hello World BPEL Application Using JDeveloper

Developing application in JDeveloper is pretty straight forward. Please find below sections which will take you through the process of creation of Hello World BPEL process through a set of images depicting the flow. You can navigate through the steps by using navigation options below the images.

Create Hello World Application

Creating Hello World application is pretty straight forward process. Create a new Application (if you don’t have one already). Making sure that the application is SOA application helps add the right libraries to the project and also brings up the SOA project wizard after creating the application. In this example, we are going to create BPEL 2.0 component for implementing Hello World program. We will use the default input and output generated by the template – to keep the process simple. We will select the synchronous process template to keep our testing simple.

Create New Application

Picture 1 of 6

Create New Application

Configure BPEL Process

By default after you are done with project creation wizard, a simple composite with one BPEL component is created. Click on the BPEL component to configure it further. Drag and drop an assign activity from the component palette into the BPEL component editor in between receive and reply activities. Double click the assign activity to give it a meaningful name and to configure the assign activity. Note that by default the input to the component is stored in inputVariable and the output that will be sent back from the process will be the outputVariable. After you have successfully completed adding the assign activity, just look at all the options provided with BPEL component and how the receive and reply activities are configured.

Default BPEL Process After Creation

Picture 1 of 10

Default BPEL Process After Creation

Deploy and Execute Hello World BPEL Application

Deploy the BPEL Application to SOA Suite by using the application server connections in JDeveloper. The steps would involve deployment of the SCA composite and testing of the composite using the fusion middleware control (or enterprise manager). The sections below cover the overview of the deployment and testing process.

Deploy BPEL Process

You can deploy the composite by using the enterprise manager (if you have packaged the application into service archive (sar) format. In this example, we are going to utilize the application server connection to deploy the composite to SOA Suite server. Make sure that there are no errors in the deployment window to validate successful deployment.

Right Click project and select Deploy

Picture 1 of 7

Right Click project and select Deploy

Execute BPEL Process

BPEL Hello World composite that we just deployed is exposed as a service to external world. You can use any web service testing tool to execute the process – but using the enterprise manager has the added benefit of tracking the execution flow. Click on test button on the composite page and provide appropriate input to the process. Click on test service to initiate and observe the response. Click on the launch flow trace link to get more detailed tracing of the composite execution.

Login to Enterprise Manager and Select Composite Application for Testing

Picture 1 of 8

Login to Enterprise Manager and Select Composite Application for Testing. Click Test option to start testing composite application.

 

Conclusion

 Some of the things we will understand by completing this BPEL Hello world program are:

  • With Oracle SOA Suite, everything you can create as SOA Application is an SCA composite
  • BPEL is one of the SCA components available inside Oracle SOA Suite – others like Mediator, Rules, Human Workflow, BPM, Spring are also available
  • BPEL has got a drag and drop interface for solving business problems
  • There are lots of constructs available with BPEL like Assign, Invoke, Looping Constructs, Conditional Statements, etc. All in all, BPEL is a programming language – just like java, C, C++, etc
  • You can develop all your BPEL code from a single IDE – JDeveloper
  • When testing out SOA Composite applications, Enterprise Manager (or em) is very useful
  • You can trace to through the execution of component to a detailed extent using enterprise manager

 

Share this:

About Chethan

I am the Founder and Director of Expertz.me! I am an Entrepreneur, Architect, Problem Solver & Techy - All rolled into one!!

  • Pingback: Testing Asynchronous Services using SoapUI - SOA Testing - ExpertzMe | Expertz.me

  • Daniel López

    Hello. I am having troubles because I want to call a webservice generated by Bpel from pl/sql. The problem is maybe because the structure of the xml generated is very different of all the other examples I see in the internet. One example, the soap action: in so many blogs I see the soap action as a link address, but in my examples is just a word: process. I already follow your tutorial for create the Hello World. Do you have the example for call it from pl/sql? Thank you so much.