本主题仅适用于 IBM Business Automation Workflow Advanced 配置。

模块开发概述

模块是 IBM® Business Automation Workflow 应用程序的基本部署单元。 模块可以包含应用程序所使用的组件、库和登台模块。

开发模块涉及确保应用程序所需的组件、登台模块和库(模块所引用的工件的集合)在生产服务器上可用。

Integration Designer 是用于开发模块以部署到 IBM Business Automation Workflow的主要工具。 虽然您可以在其他环境中开发模块,但最好使用 Integration Designer

IBM Business Automation Workflow 支持 用于业务服务和调解模块的模块模块和调解模块 都是服务组件体系结构 (SCA) 模块的类型。 调解模块通过将服务调用变换为目标所理解的格式,然后将请求传递到目标并将结果返回给发起方,允许在应用程序之间进行通信。 业务服务模块用于实现业务流程的逻辑。 但是,模块也可以包含可以打包在调解模块中的调解逻辑。

以下部分涉及如何实现和更新 IBM Business Automation Workflow的模块。

组件

SCA 模块包含组件,后者是用于封装可复用业务逻辑的基本构建块。 组件提供并使用服务,并且与接口、引用和实现相关联。 接口用于定义服务组件与主调组件之间的合同。

通过 IBM Business Automation Workflow,模块可以导出服务组件以供其他模块使用,也可以导入服务组件以供使用。 要调用服务组件,主调模块将引用服务组件的接口。 对接口的引用是通过配置从主调模块到其接口的每个引用来解析。

要开发模块,您必须完成下列活动:
  1. 定义或标识模块中的组件的接口。
  2. 定义或处理组件所使用的业务对象。
  3. 通过组件的接口来定义或修改这些组件。
    注: 组件是通过其接口定义的。
  4. 导出或导入服务组件。
  5. 创建要部署到运行时的企业归档 (EAR) 文件。 您可以使用 Integration Designer 中的导出 EAR 功能部件或 serviceDeploy 命令来创建文件。

开发类型

IBM Business Automation Workflow 提供了一个组件编程模型,以促进面向服务的编程范式。 为了使用此模型,提供者导出服务组件的接口,以便使用者能够导入这些接口并使用该服务组件,就像它是本地服务组件一样。 开发者使用强类型化接口或动态类型化接口来实现或调用服务组件。 本文档内的“参考”部分中描述了这些接口及其方法。

将服务模块安装到服务器之后,可以使用管理控制台来更改从应用程序中进行的引用的目标组件。 新目标必须接受同一业务对象类型并执行该应用程序中的引用所请求执行的操作。

服务组件开发注意事项

在开发服务组件时,请向自己询问下列问题:
  • 此服务组件是否将导出并由另一模块使用?

    如果情况如此,请确保您为此组件定义的接口可以由另一模块使用。

  • 此服务组件的运行时间是否相对较长?

    如果情况如此,请考虑实现此服务组件的异步接口。

  • 使此服务组件分散化是否有益?

    如果情况如此,请考虑使部署在服务器集群中的服务模块包含此服务组件的副本,以便通过并行处理受益。

  • 应用程序是否要求混合使用一阶段落实资源和两阶段落实资源?

    如果情况如此,请确保对应用程序启用“上一参与者”支持。

    注: 如果使用 Integration Designer 创建应用程序或使用 serviceDeploy 命令创建可安装 EAR 文件,那么这些工具会自动启用对应用程序的支持。 请参阅 WebSphere® Application Server Network Deployment 文档中的主题 在同一事务中使用一阶段和两阶段落实资源