ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 开发 SOA 应用程序

开发 SOA 应用程序

原创 Linux操作系统 作者:isoa 时间:2009-05-22 16:03:22 0 删除 编辑

引言

在 developerWorks SEK 里,有一系列软件工具。利用它们,可以帮助您开发 Web 服务解决方案,部署 Web 服务、存储数据、与信息和工作流产品进行整合,还包括象 SAP 和 PeopleSoft 这些软件的专有解决方案。所有的这些软件,包括 Microsoft ® Windows ® 和 Linux ™的兼容版都刻录在两张高密度的 DVD 光盘里。

DVD 光盘包含这些软件工具各自的界面,如 图 1 所示, 这种界面为连接和安装 SEK 软件提供了非常便捷的方法。


图1:SEK DVD 界面(Windows版)
interface 

包含在 SEK 中的软件

SEK 包含了一系列的软件工具,这些工具可以帮助您开发应用程序,从业务流程的分析到运行,再到新 Web 服务和 SOA 应用程序的开发都提供了良好的支持。这两张 DVD 光盘包含的产品来自于 IBM 提供的多个套装软件。

Rational 工具

SEK 包含了多个来自 Rational 软件包的工具:

  • Rational Application Developer for WebSphere Software Version 6.0
  • Rational Functional Tester Version 6.1.0
  • Rational Software Architect Version 6.0
  • Rational Software Modeler Version 6.0
  • Rational Web Developer for WebSphere Software Version 6.0

Rational 开发工具是基于成功的并且非常受欢迎的 Eclipse 平台,它不仅易用、灵活,而且在您的每一个开发进程中都可以使用外部开发环境。Rational Software Modeler 提供了使用设计标准(比如统一建模语言,UML )构建模型的能力。通过 Rational Software Modeler,您可以将这些模型转变为类和源代码,然后使用 Rational Software Architect 和 Rational Application Developer 进一步提升其性能。

关于 Web 网站和 Web 服务的特殊开发,Rational Web Developer for WebSphere Software Version 6.0 提供了一种端对端的环境。利用它,不仅可以完成开发和测试,还可以通过 WebSphere Application Server 产品完成 Web 服务的部署。

正如以上所提到的,IBM 软件开发平台使用了 Eclipse,它是一种支持插件的灵活体系结构,这使得它很容易扩展并具备修改 Eclipse 环境的功能。这就意味着您既可以使用 Eclipse,也可以使用 IBM 的其它工具。比如原用于 Rational Suite 的开发进程管理工具,这些工具包括 Rational RequisitePro ®、 Rational ClearQuest ®、and Rational ClearCase ®等等。由于这些工具提供了开发环境内的访问,这可以让开发者和管理者就工程的状态与进度进行更加便捷的沟通。

用一个例子来显示基于 Eclipse 的 IBM Rational 产品打包体系,我认为是很有价值的,它能更好地说明这些东西 (如 图 2 所示):


图 2:IBM Rational 产品包体系
packaging

DB2 工具

SEK 所包含的 DB2 ® 工具:

  • DB2 Universal Database ™ Enterprise Server Edition Version 8.2
  • DB2 Universal Database Express Edition Version 8.2

无论是哪一类数据驱动的应用程序,其核心都是用于存储信息的数据库。SEK 提供了 DB2 通用数据库易捷版的免费试用,易捷版是 DB2 数据库产品套装的一部分。该版本允许单一的开发者使用 DB2 数据库技术。由于该工具是 DB2 产品套装的一部分,在部署应用程序时,无需做任何的改动,即可将应用程序部署在某一服务器中,或部署在 DB2 数据库的企业版中,比如 SEK 中的 DB2 通用数据库企业服务器版。

Lotus Domino and Lotus Notes

SEK 包含了两个来自 IBM Lotus ® 产品家族的工具:

  • Lotus Domino ® Version 6.5.3
  • Lotus Notes ® Clients (Notes/Designer/Administrator) Version 6.5.3

Lotus Domino 系统提供了一个用于内容管理和应用程序协同工作的环境。它的核心功能是,Domino 是一种协同软件,它允许您构建用于协同环境的信息传递和计划控制的应用程序。 Lotus Notes 是一种文档管理和工作流应用软件,您可以把它当作是简单的文档管理系统使用,也可以进一步提升该产品的功能,使其提供文档或工程的开发历史。这种功能在客户关系管理(CRM)、帮助台(help desk)及其它通过对文档及沟通交流跟踪可以提高服务质量的(QoS)的环境,有着特别重要的作用。

WebSphere 应用程序服务器

SEK 包含了2个 WebSphere 应用服务器产品:

  • Application Server Version 6.0
  • Application Server Express Version 6.0

应用服务器提供了基于 Web 应用程序的开发和服务发布,它对基于 JAVA 技术基础的发布进行了优化,比如 servlets、JavaServer Pages (JSP)、企业级 JavaBeans (EJB),以及 Web 服务。

SEK 包含了服务器的易捷版,您可以使用它单独开发并快速发布在服务器上。易捷版的安装版设计得比较直接简单,这使得它用于快速发布显得非常完美。而 WebSphere 应用服务器的完整版提供了更多额外的功能,特别是安全性的控制与优化、程序执行、跨多服务器上应用程序的表现。

WebSphere 集成工具

SEK 包含的 WebSphere 集成套件:

  • WebSphere Business Integration Modeler Advanced Edition Version 5.1
  • WebSphere Host Access Transformation Services (HATS) Toolkit Version 5.0
  • WebSphere Information Integrator Advanced Edition Version 8.2
  • WebSphere MQ Version 5.3
  • WebSphere Studio Application Developer Integration Edition Version 5.1.1

WebSphere 集成套件包含了一系列用于集成其它平台和环境的工具。这些工具支持接口,甚至可以将专有标准转化为 Web 服务,以便更容易地与面向服务架构(SOA)的应用程序更好地集成。

WebSphere Business Integration Modeler 高级版是以 Eclipse 平台为基础的,它提供了一个简便的建模平台,可以让您模拟和验证业务处理和工作流,以便把它们转化为应用程序。同时,它还集成了 WebSphere MQ(用来管理和集成工作流)和 WebSphere Studio Application Developer Integration Edition,为开发以客户业务处理和工作流为基础的应用程序提供了很好的工具。

WebSphere HATS Toolkit 和 WebSphere Information Integrator Advanced Edition 提供了很多工具和服务可以用于应用程序的集成、互通。这些应用程序和环境可以是专有的,如 SAP、PeopleSoft,也可以是大型机的应用程序和技术模块。

IBM Workplace 客户端技术

要将 Web 服务部署到平台中,除了典型的服务器和桌面环境外,往往还需要额外的开发工作。使用 IBM Workplace 客户端技术、Micro Edition Version 5.7,您可以很容易地扩展 Web 服务和 SOA 应用程序到手提设备、个人数字助手(PDA)、及其它的移动设备上。这就使得那些就算在局域网(LAN)之外的环境中的用户,也能轻松地使用我们的 Web 应用。

Tivoli 软件

IBM Tivoli ® Directory Server Version 5.2 提供了符合工业标准的轻量级目录访问协议(Lightweight Directory Access Protocol ,LDAP)数据库,利用该数据库,可以进行安全信息存储和认证。

使用 SEK 开发 Web 服务

Web 服务已成为支撑现代应用程序的技术和系统的核心组件,通过改造翻新,还可应用于很多既存的应用程序中。开发一个 Web 服务应用程序,或重新开发一个现有的应用程序,本身都不是件容易的事。然而,若使用恰当的软件和开发工具,开发一个使用 Web 服务的应用程序将变得更加容易。

SOA 是建造在 Web 服务模型上的,SOA 定义了一种方法,扩展了 Web 服务基于对象的架构,并且可以帮助您开发模块化的应用程序。每一模块都可以通过已定义好的 Web 服务接口与其它模块进行通信。每一模块都是独立的,但又是可以连接的。此外,应用程序的开发变得更加容易,因为这些应用程序都是构建于更小型的组件。

此外,您无需对应用程序进行全面复杂的重新开发,即可重写、修改、提升应用程序的功能。您只需重新生成其中的一两个组件,这既可以保留与旧 SOA 应用程序兼容,又提供了可用于其它应用程序的新特性和新功能。因此,SOA 是对象的逻辑发展过程,包括从本地应用程序和局域网(LAN)式应用程序、再到广域网(WAN)及 Internet 范围的应用程序,这些应用程序可以彼此通信,并可在多个级别上进行协同工作。

Web 服务和 SOA 应用程序的部署均使用了开放标准,比如简单对象访问协议(SOAP)、可扩展标记语言(XML)、 Web 服务描述性语言(WSDL),这些标准使得在多平台和多环境中开发、部署应用程序变得更加容易。这种开发和部署的灵活性同时意味着您可以使用 SOA 应用软件构建新的应用程序、及旧应用程序的接口,并且可以更充分地利用有关技术和装备。

SEK 中的软件提供了一套完整的解决方案——从开始到完成——从应用程序的开发到应用程序的部署,包括那些基于 Web 服务和 SOA 的应用程序。特别是,所有的软件都提供了开发应用程序的功能。此外,如果您综合地使用这些提供全方位解决方案的工具,那么您会受益更多。举个例子,比如有一些工具已用于 Web 服务解决方案,同时这些工具已合并到 SOA 应用程序中,而您不必对功能接口进行设计开发;而另外一些工具则为部署、安全防范、Web 服务和 SOA 应用程序的支持,提供了便捷的解决方案。

为了帮助您理解SEK 产品之间的集成和协同工作,下面用 图 3 向您简单概述 SEK 产品之间的关系。


图 3,SEK 工具集成
工具集成

SOA 应用程序的开发是从程序设计和 IBM 软件开发平台开始的。IBM 软件开发平台包含 Rational 产品家族、向导、模板、及构建应用程序的指南,这些指南包含了构建 Web 服务的专门工具。整个过程开始于 IBM Rational Software Modeler,该软件为 Web 服务应用程序提供了建模工具,IBM Rational Software Architect 提供了代码编写和完成应用程序的开发环境。当然,您还可以使用一些额外的工具(比如 IBM Rational Functional Tester),来测试您的应用程序,然后把它部署到 WebSphere 服务器平台中。

这一贯穿整个应用程序开发的生命周期、由界面、向导和 Eclipse 环境组成的工具箱可以让您更轻松地设计应用程序,更一致地将 SOA 应用程序的组件捆绑在一起。比如,Eclipse 环境包括了浏览器和发现工具,以更好地查找现有的 Web 服务;同时在 Eclipse 环境里,您可以浏览它们的功能和界面接口。 图 4 显示了一个关于 Web 服务浏览器的例子,同时显示了 IBM Rational Application Developer 的主要界面。


图 4:Rational Application Developer 中的 Web 服务浏览器
在 RAD 中的浏览器

DB2 通用数据库是一种关系型数据库解决方案,您可以使用它存储结构型数据,以及 SOA 应用程序使用的对象和组件。DB2 扮演的角色既可以是 Web 服务的提供者,也可以是 Web 服务的消费者。DB2 Web 服务对象运行时框架 (Web services Object Runtime Framework,WORF)可以自动生成读取 DB2 数据的 WSDL 接口,该过程是通过一种文件定义实现的,我们将之称为文档访问定义扩展(Document Access Definition Extension,DADX),这种文件包含了关于数据结构和您希望支持的操作的有关信息。Web 服务对 DB2 的接口和 Java 服务器解决方案(如 WebSphere)实现捆绑。作为消费者,DB2 使用了 Starburst 扩展,从而允许您通过 SQL 将来自其它 Web 服务的数据进行集成。您可以使用 WebSphere Studio 的插件将 WSDL 定义转变成 DB2 SQL 功能所需要的东西。您无需编写复杂和费时的代码,即可轻松地将 DB2 以数据提供者或数据消费者的方式,集成到 SOA 应用程序和应用环境中,这在相当程度上简化了开发过程。

一旦要发布您的 Web 服务和 SOA,应用服务器提供了您需要的高性能及高安全的发布平台。WebSphere 是灵活和高可配置的,而且还与其它 SEK 工具保持良好的兼容与集成。比如,您可以使用 IBM 软件开发平台来测试,并直接在 WebSphere 服务器上部署您的 Web 服务。因为从开发到部署的一切东西都已在 Eclipse 平台中提供了,所以在开发到部署过程中,您不需要在应用程序、环境、平台之间之间切换。这种较强的易用性不仅提升了工作流,也加快了应用程序的开发和部署。

在安全方面,Tivoli Directory Server 提供了符合工业标准的 LDAP 服务,该服务和应用程序服务器集成在一起,为我们提供了目录服务,包括服务发现、认证,以及为保护 Web 服务组件的必要安全访问控制信息。

由于改写现有的技术和软件可能会比较困难,尤其是那些基于主机、监控(turnkey)、和专有的解决方案的程序更是如此。所以,一些 SEK 工具为我们提供了构建和发布 Web 服务接口的解决方案,之后您就可以将 Web 服务集成到 SOA 的部署中。例如, IBM HATS 提供了可以连接 3270 和 5250 主机接口的 HTML 界面,您可以使用 HATS 建立 Web 服务接口,用于主机的事务处理和相关操作。

总结

总之,在您的组织里设计、开发、部署 Web 服务和 SOA 应用程序所必需的一切工具,都已包含在 developerWorks SEK 里。SEK 提供的工具包含这些功能:设计和业务流程建模,将业务流程转化为应用程序模型或应用程序;进一步开发它们,形成工作代码。同时,您有消息和文档流的完整数据库解决方案,以帮助您的现有业务流程的信息存储;最后,还提供了一套部署和管理应用程序的工具,以帮助您试运行应用程序。

转自 IBM DW中国

作者:Martin Brown (mailto:questions@mcslp.com), 自由撰稿人和顾问

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/14780828/viewspace-600852/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2008-07-07

  • 博文量
    251
  • 访问量
    299131