官术网_书友最值得收藏!

Understanding the BPEL language

Let's now have a more detailed look into what we did and try to understand what a BPEL process is. A BPEL process is basically a piece of source code with the .bpel extension, which is executed on a process server. BPEL uses the XML vocabulary to write the code. So far, we have used the visual editor to compose the BPEL process. However, we can switch to the source code view.

A BPEL process consists of steps. Each step is called an activity. BPEL supports basic and structured activities. Basic activities represent basic constructs and are used for common tasks listed, as follows:

  • Invoking other web services using <invoke>
  • Waiting for the client to invoke the business process through sending a message using <receive> (receiving a request)
  • Generating a response for synchronous operations using <reply>
  • Manipulating data variables using <assign>
  • Indicating faults and exceptions using <throw> and <rethrow>
  • Waiting for some time using <wait>
  • Terminating the entire process using <exit>

We can then combine these and other basic activities and define complex flows that specify exactly the steps of a business process. To combine basic activities, BPEL supports several structured activities. The most important are as follows:

  • Sequence (<sequence>) for defining a set of activities that will be invoked in an ordered sequence
  • Flow (<flow>) for defining a set of activities that will be invoked in parallel
  • Conditional construct (<if>) for implementing branches
  • While, repeat, and for each (<while>, <repeatUntil>, <forEach>) for defining loops
  • The ability to select one of the number of alternative paths using <pick>

Each BPEL process will also define partner links using <partnerLinks>. Partner links are other services that use the BPEL process or are used by the BPEL process. A BPEL process also declares variables using <variables>.

主站蜘蛛池模板: 二连浩特市| 祥云县| 南丰县| 灌阳县| 怀柔区| 韶山市| 宜章县| 马边| 兰考县| 南岸区| 三原县| 正蓝旗| 高要市| 万载县| 贵南县| 保定市| 乌兰浩特市| 宿松县| 建始县| 枣阳市| 若尔盖县| 湾仔区| 泾川县| 米林县| 神池县| 锡林浩特市| 巴林左旗| 托里县| 南澳县| 博兴县| 安溪县| 勃利县| 北辰区| 平陆县| 潜江市| 清徐县| 陵水| 光泽县| 黄大仙区| 沭阳县| 昭苏县|