What is BPEL? I'm looking for some nice simple examples of BPEL usage. The wikipedia page isn't too enlightening. How about a "Hello world" in BPEL? A BPEL shell? A BPEL IDE?
4 Answers
BPEL is just a way to build centralized control of disparate but interdependent systems from a centralized place.
Users can create rules, workflows and other control structures to make sure everything plays nice.
For example, say you run a school district; in particular, a school districts information infrastructure. Over the years you have accumulated a motley assorted group of hardware and software. For each aspect of your district; grading, attendance, bus routes, nutrition, payroll, etc, etc, you have various distinct software written in different languages by different vendors. Well, you have some overlap in your data and different end users use the different pieces of software and they expect it all to agree with each other - you use your BPEL system to be sure all the data is where it is supposed to be when it is supposed to be there.
You also have some processes that absolutely have to run after the successful completion of another process on a different system. You use BPEL to make sure those are coordinated. BPEL is all about centralized coordination and you probably don't need it unless you are in a large organization and lots of different systems.

- 297
- 1
- 6
- 19

- 4,567
- 6
- 38
- 46
This BPEL tutorial covers on how to write a BPEL from scratch.
Writing a simple WS-BPEL process for WSO2 BPS and Apache ODE
This article covers the IDE based BPEL process development. Developing WS-BPEL Processes using WSO2 Carbon Studio

- 1,120
- 1
- 8
- 16
Have a look at the ActiveBPEL IDE. Also you can find a short 101 BPEL guide in Oracle. The demo is about Oracle's BPEL engine, but the source is general enough.

- 103,016
- 27
- 158
- 194
Background
I'll add a little bit to what has been said. BPEL is a procces orchestrator. You can use it to do any kind of serialised of parallel process automation.
For example: A customer buys something on the website of company 'AAA', this instigates a BPEL process in that companies service oriented architecture (SOA). Within this BPEL a series of BPEL components does their work on the payload generated by the consumers purchase. This payload can consist of all kinds of information regarding the buyer and the purchased item, such as <shippingAdress>
and <itemId
. An invoke BPEL component can be used to send information from the payload to another BPEL process or to another chained company through a webservice call in the composite wherin the BPEL lies. That company can be responsible for the shipping of the purchased item, another company can be responsible for the processing of the money. All of these companies dealings are automated through composite applications containing series of BPEL processes. All are communicating information across the web through (a)synchronous webservice calls.
The BPEL part is where the logic lies, where the true automation/orchestration of function resides.
Getting started The Oracle documentation websites for soa suite 11g and 12c are quite extensive for those willing to read. If you like to do a tutorial from the basics and up you can use their suggested code to get started. It's a little bit trickier when it comes to applying their documentation to existing BPEL projects, but its still a good source for many basic questions and examples regarding SOA.
https://docs.oracle.com/cd/E12483_01/integrate.1013/b28981/async.htm Also, a quick google search will lead you to some expert guides written by bloggers. Some of these are a bit more beginner friendly than the oracle documentation, but mostly lack details pertaining to your own project.
http://javaoraclesoa.blogspot.com/2016/02/asynchronous-interaction-in-oracle-bpel.html
You can also just youtube some videos about BPEL to get the gest of it :).
Good luck and have fun!

- 173
- 1
- 15