如何使用Java、WS-BPEL和SOA交付复合应用程序
本文演示了 NetBeans 如何提供真正集成的开发环境,该环境允许用户扩展现有的 Java 服务、创建新的 Java 服务以及组合 Java 服务与业务流程。本文还介绍了如何使用 NetBeans 进行无缝地交互式开发、构建、部署以及测试复合应用程序,从而减少交付复合应用程序所需的总周转时间和精力。
Java 是一种用于构建组件、服务和很多厂商和平台中立的应用程序的杰出语言。过去十年来该行业广泛采用了 Java 技术就是 Java 强大功能的最好证明。使用 Java 开发新应用程序、服务和组件并未处于领先地位,但是很多组织都逐渐转到下一个阶段,即使其 IT 基础架构更加成熟。这个阶段由很多因素驱动,包括当今商业的运作方式、必须不断调整以适应市场趋势,以及 IT 已经从一个支持组织转变为业务的骨干,因此需要与组织保持同步。根据改变的业务需求不断快速地调整、面市时间和成本是决定在此阶段是否成功的因素。
有很多技术开始在此阶段发挥重要的作用,例如,面向服务的体系结构 (SOA) 就是一个主要支持者。Java EE 技术是现有应用程序的中立服务支持者,从而形成了 SOA 的基础。支持服务的应用程序创建了复合完全不同的、各种功能的应用程序以对超越应用程序和企业边界的业务进行建模的机会。Web 服务业务流程执行语言 (WS-BPEL) 通过重用提供了一种快速复合和协调服务的方法。Java 和 WS-BPEL 彼此完美互补,并且为集成服务和交付复合应用程序提供坚实的基础。
本文将简要介绍这些技术以及它们如何共同工作以提高开发人员的效率和业务敏捷性。
技术 – Java、WS-BPEL 和 SOA
对于本文将探讨的这些技术,还没有大家认可的定义。因此,我们现在需要按照常规理解解释这些技术,然后再开始详细探讨。
面向服务的体系结构是一种用于实现具有精确定义接口的连接紧密或松散的业务和技术功能的技术模式。此类服务需要在接口中指定详细信息,而无需了解关于实现的内容。
尽管基于 SOA 体系结构的模型非常少,但定义明确的服务层实际上可能有很多个层,因为重用并组合这些服务用于创建粗粒度的服务。如图表中所示,这些服务可以彼此利用以提供多层服务,并且使用包括 Java 在内的任何语言都可以实现此类模型。只要能够通过精确定义的接口使用该服务,那么该服务就不依赖于任何技术。Java EE 5 是一组协调的技术,它使解决方案能够用于开发、部署和管理以服务器为中心的应用程序。WS-BPEL 是一种基于 XML 的执行语言,可以使用它将粗粒度的服务组合为范围更广的服务或完善的应用程序。
艰难决定
如果没有适当的工具集,使用该技术通常会弊大于利。为技术确定适当的工具集和选择该技术一样重要。
当架构师们尝试了解什么时候可以从 Java 切换到 WS-BPEL 时,交付复合应用程序与其说是一门科学,倒不如说是一门艺术。这个决定通常确定了复合应用程序的敏捷性。
适当的工具集
Sun Microsystems 提供了很多工具和服务器,在本文中我们将使用它们(尤其是 Java EE 5 SDK Update 2 Tools Bundle)构建复合应用程序。可以在 http://java.sun.com/javaee/downloads/ 上找到该软件,它包含以下内容:
Java EE 5 应用程序服务器
NetBeans 5.5 with NetBeans Enterprise Pack 5.5
Java 业务集成 (JBI) 运行时和 WS-BPEL 服务引擎
该包提供了使用 Java 和 WS-BPEL 构建、部署和管理复合应用程序所需的集成工具和运行时环境。除了所有 Java SE/EE 开发环境之外,工具还包括 WS-BPEL 编辑器和调试器、WSDL 和 XSD 编辑器以及用于创建服务和将其组合为应用程序的项目系统。运行时不仅提供 Java EE 5 应用程序服务器,而且还提供执行在 WS-BPEL 编辑器中创建的业务流程所需的 WS-BPEL 引擎。
实际上,该包还提供支持完整生命周期以开发、部署和管理应用程序和业务过程,从而将来自 Java EE 应用程序的服务和 Web 服务组合在一起的功能。
对用例使用该技术
- 本文关键词:

