使用J2EE构建服务

如今,web services 是一门流行的实现面向服务应用的技术。J2EE已经成为一个流行的用来部署web services 应用的平台。并且,J2EE1.4制定了在Java平台上建立和部署web services应用的标准。

在这篇文章中,我将说明如何在实现了J2EE1.4规范的应用服务器之间,比如Oracle Application Server 10g,使用J2EE1.4建立可互操作的,轻便灵活的服务。

Web Services 架构

在深入研究J2EE平台上web services的开发和部署的细节之前,让我们先简要的查看一下web service 的架构。

Web services 有很多种定义,但是简而言之,web services 是能够通过网络被发布,发现和调用的 独立的,自我描述的组件。如图1所示,一个web service可能会执行一个简单的功能,比如核算银行存款 记录,也可能会是一个横跨多个商业过程的复杂的任务。

图1. 一个web service 是如何工作的

有两种与web services 交互的方法:RPC类型和文档类型。最初,RPC类型的web services在工业界很 流行,但是最近几年它已经被文档类型的web services所超越,后者被认为是在web services中交换信息 的首选方法。

RPC类型的web services提出将数据交换模拟成远程过程调用(RPC)。这在商业应用中是很常见的。对 于远程调用和其返回值,让相互交换的消息都遵照一个明确定义的准则。与之相反,文档类型的web services模拟XML文档的交换,交换模式由发送和接收应用程序共同定义。文档类型的服务更能适应需要 交换商业或其他类型文档的应用程序,而且不同于RPC类型的web services,发送方不需要期望或等待一 个即时的响应。

大多数开发者一定会同意:web services是一种有效的实现SOA的技术,因为它提供了不同平台之间的 互操作性,以及依赖于XML,SOAP和HTTP等的轻量级的技术。

平台独立性和技术实现性是web services普及的主要原因。客户端不必了解相关技术的实现,而只需 简单地通过网络调用服务就可以了。例如,即使你使用Java/J2EE 技术创建了一个服务并且部署在一个 J2EE服务器上,比如Oracle Application Server Container for J2EE(OC4J),客户端也可以使用微软的 .NET架构创建。

既然我们已经对web services有了基本的了解,就让我们关注一下构成web service的基本元素吧。

时间: 2024-08-07 21:55:47

使用J2EE构建服务的相关文章

精通SOA(一):构建服务组合

尽管面向服务的体系结构或 SOA 仍然是新生事物,但许多公司正逐步认识到需要采用 SOA 方法作为 执行满足业务需求的解决方案的方法.采用这种方法的一个关键步骤是构建可重用服务的组合. SOA 表示新应用程序的设计.开发和集成方式的根本性转变.它还将企业应用程序的开发简化为模块 化业务服务,可以轻松地对其进行集成和重用. SOA 的一个主要优点是缩小了业务和 IT 之间的差距.作为需求收集活动的一部分,将业务和技术需 求与机构的与项目有关的主要业务目标相对应,将对确保项目与业务需求同步大有帮助.

J2EE Web服务客户端质量报告(一)

概要 本文实现了记录J2EE(Java2平台企业版)Web服务的客户端响应次数的一个通用的结构.记录的响应次数是真实的客户端响应次数,所以它们实际上反映了用户对服务质量的看法.实验的样品是使用Sun ONE (开放式网络环境)应用服务器和IDE建立起来的,但是这个方法很普通,很容易推广到其它J2EE实现上. Web服务正迅速的成为实现客户端-服务器系统的首选结构.它的优点是:企业可以正式的定义一组服务,然后生成通讯用的完整的客户端和服务器的代码库,从而简化新的客户端对合法的Web资源的访问. 但

微软宣布云构建服务

微软在Visual Studio Live上宣布Team Foundation Service(TFS)将增加一个基于云的构建服务. TFS目前支持分布式构建,但每个用于构建的虚拟机必须分别设置和配置,基于云的构建服务将可以自动化这一过程. 预览版现阶段支持http://www.aliyun.com/zixun/aggregation/13385.html">Visual Studio 2010和 Visual Studio 11 beta的C++++ 和.NET应用的构建和单元测试,下一

数据点:使用 Silverlight 2 和 WCF 构建服务驱动的应用程序

本专栏基于 Silverlight 2 的 Beta 2 版本.文中的所有信息均有可能发生变更. 目录 示例应用程序 跨域通信 Silverlight 客户端 绑定产品列表 异步通信 产品详细信息和绑定模式 更改事件 结束语 毋庸置疑,Silverlight 2 使得利用大量图形处理技术构建丰富 Internet 应用程序 (RIA) 变得非常容易.但另一方面,Silverlight 2 可以轻松构建相当专业的业务线 (LOB) 应用程序也是不争的事实.Silverlight 2 支持已启用了

关于基于J2EE电子地图服务系统的问题

问题描述 我想做一个基于J2EE的电子地图服务系统,采用hibernate,spring,struts框架,地图资源使用百度地图API,如果这样做的话三大框架就用不大上,数据库也用不大上,地图的服务只是在jsp页面通过javascript就可以实现地图的服务,请高手能否传授一下做这个项目的经验, 解决方案 解决方案二:这个你要研究透了,你就离牛人不远了解决方案三:有高手做过的吗

J2EE Web服务客户端质量报告(五)

建立样品客户端应用 要建立样品客户端应用,请将下列文件系统添加到IDE中:<download directory>/Metrics/TransactionClient. 该文件系统包含一个应用类和一个Xact 软件包.应用类可模仿客户端事务的执行,Xact 软件包包含客户端Web服务处理器. Xact软件包可使用Sun Web服务开发者工具包来创建,这个工具包包括在Sun ONE应用框架内.批文件gen.bat使用wscompile命令创建Xact软件包.如果你想重建该软件包的话, 你只需调整

J2EE Web服务客户端质量报告(四)

客户端服务软件包 通过指引WSDL编译器到应用服务器提供的WSDL上可自动生成客户端服务软件包.这个软件包包含许多类.我们需要修改的唯一类就是客户端Stub类.同样地,服务器Web 服务软件包也包含类Tie,它可将Web服务请求绑定到EJB方法上,客户端Stub类为每个服务商业方法的每个客户端配备一个方法. 服务Stub类的名称为 <ServiceName>ServantInterface_Stub,其中<ServiceName>就是服务名.我们看看类XactServiceServ

J2EE Web服务客户端质量报告(三)

Payload软件包 Payload软件包可用于客户端,也可用于服务器.它包含三个类:ClientReport.CurrentReport.和 Serializer. ClientReport 表示一个客户端次数报告: package Payload; import java.io.*; import java.util.*; /** * * @author Brian Connolly Brian@ideajungle.com */ public class ClientReport impl

J2EE Web服务客户端质量报告(二)

服务器Web 服务软件包 服务器Web 服务软件包可自动生成.在Sun ONE Studio中,Web模块的创建只要选择一组EJB Java方法即可,并且Web服务软件包的类可由Web模块创建. 该软件包包含许多类和接口.这里最关键的一个就是<ServiceName>ServantInterface_Tie 类,在这个类中服务名就是<ServiceName> .类Tie是Web服务模块最上面的堆栈:它将引入的服务调用绑定到创建它的EJB组件上.我们只需修改类Tie就可以添加次数纪录