- WS/BPEL 2.0 for SOA Composite Applications with Oracle SOA Suite 11g
- Matjaz B.Juric Marcel Krizevnik
- 605字
- 2021-04-13 17:13:52
In this chapter, we will get familiar with BPEL concepts, and discuss composing services with BPEL. We will look at how to develop executable business processes. In a nutshell, we will:
- Discuss service composition with BPEL
- Explain how business processes are defined in BPEL
- Get familiar with core concepts including:
- The structure of BPEL process definitions
- Invoking services
- Synchronous and asynchronous processes
- Partner links
- The role of WSDL
- Important activities and other constructs
- Define an example BPEL process
BPEL uses an XML-based vocabulary that allows us to specify and describe business processes. BPEL is a programming language. Most development environments that support BPEL, such as Oracle JDeveloper, IBM WebSphere Integration Developer, or Eclipse usually provide a visual editor, where we can compose BPEL processes by dragging and dropping the BPEL activities in a visual way. However, the majority of tools also allow a switch to the source view, where you can enter the BPEL code directly. A BPEL visual representation is generated out of BPEL code. In this chapter we will look at the BPEL code.
With BPEL, you can describe business processes in two distinct ways:
- Executable business processes: They specify the exact details of business processes and can be executed by a BPEL process server. In the majority of cases, we will use BPEL to specify executable processes.
- Abstract business processes: They process templates or public message exchange between parties, without including the specific details of process flows. They are not executable and are rarely used.
This chapter focuses on executable business processes. Abstract business processes are covered in the next chapter.
Executable business processes are processes that comprise a set of services. When we describe a business process in BPEL, we actually define a new service that is a composition of existing services. The interface (WSDL) of the new BPEL composite service uses a set of port types, through which it provides operations like any other service. To invoke a business process described in BPEL, we must invoke the resulting composite service.
In a typical scenario, the BPEL business process receives a request. To fulfill it, the process then invokes the involved services and finally responds to the original caller. Because the BPEL process communicates with other services, it relies heavily on the WSDL description of the services invoked by the composite BPEL service.
Anyone developing BPEL processes requires a good understanding of WSDL and other related technologies. BPEL introduces WSDL extensions, which enable us to accurately specify relations between several services in the business process. These relations are called partner links. The following figure shows a BPEL process and its relation to services (partner links):

Any BPEL process specifies the exact order in which participating services should be invoked. This can be done sequentially or in parallel. With BPEL, we can express conditional behavior; for example, a service invocation can depend on the value of a previous invocation. We can also construct loops, declare variables, copy, assign values, define fault handlers, and so on. By combining all these constructs, we can define complex business processes in an algorithmic manner. We can describe deterministic as well as non-deterministic flows. Because business processes are essentially graphs of activities, it is sometimes useful to express them using a modeling notation, such as BPMN (Business Process Modeling Notation) or UML (Unified Modeling Language) activity diagrams. BPEL is not a modeling language for processes, but an execution language for processes and orchestration of services. To understand how business processes are defined in BPEL, we look at the core concepts in the next section.
- Vue.js前端開發技術
- AutoCAD 2010中文版基礎教程(第2版)
- Excel圖表與表格實戰技巧精粹
- 設計模式之禪(第2版)
- 剪映專業版(電腦版)視頻剪輯全攻略:音效添加+轉場特效+視頻制作
- Quickstart Apache Axis2
- Photoshop CC入門與進階
- 中文版Photoshop 2020完全自學教程
- After Effects中文版入門、精通與實戰
- After Effects影視特效立體化教程:After Effects 2021(微課版)
- 零基礎學AutoCAD 2018(全視頻教學版)
- 邊做邊學:平面廣告設計與制作(Photoshop 2020+Illustrator 2020·第3版·微課版)
- iPad+Procreate室內設計手繪表現技法
- SPSS統計分析
- After Effects 2022從新手到高手