Apache ODE 开发指南
ODE 的关键组成部分包括 ODE BPEL 编译器,ODE BPEL 引擎 Runtime,ODE
数据访问对象( DAOs ) ,ODE 整合层(ILS) ,以及用户工具。如下图所示:
“编译器将 BPEL 文件转换成可在 ODE BPEL 引擎 Runtime 中执行的对象,这些
对象可通过一个可靠的方式依靠 ODE 数据访问对象进行可持久化的存取;运行
时环境之上则是 ODE 整合层,它连接到外部世界更广泛的执行环境
如上图所示:
BPEL 编译器负责将 BPEL 相关资源(BPEL 描述文档,WSDL 和 Schema)
编译成可执行的描述。编译成功之后会产生一个扩展名为.cbp 的文件,该文件
是 BPEL 运行时唯一需要的文件。编译失败时,编译器会列出与资源有关的错
误信息。
BPEL 引擎运行时负责执行编译后的 BPEL 过程,主要的功能包括:过程实
例的创建、销毁、消息的收发等。它还为用户工具与引擎交互提供了过程管理
API。执行过程中的实例状态跟踪和消息传递都会需要利用持久化机制,这由
DAO 组件来完成。引擎运行时(Runtime)利用 java 并发对象(java Concurrent
Object,Jacob)来完成过程实例的状态表示和并发性管理。Jacob 提供了应用性
的并发机制,它不依赖于线程,这样就降低了系统的开销。
ODEDAO 组件负责 BPEL 引擎运行时和底层数据存储的交互,数据存储一
般使用关系数据库。此时。DAO 由 OpenJPA 来实现。可以自定义不使用 JDBC