基于JAXWS的成绩查询服务设计说明书
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于JAX-WS的成绩查询服务
设计说明书
1 Webservice相关模型及理论
1.1 Webservice介绍
从表面上看,WebService就是一个应用程序,该应用程序向外界提供了一个能够通过Web进行调用的API。即用编程的方法通过Web调用来实现某个功能的应用程序。如图:
创建Web Service,该Web Service作用是查询天气预报地信息。接受查询条件字符串,通过SOAP协议将客户端请求信息发送到Web Service服务发布服务器上,Web Service服务端接收用户请求信息,调用中间层组件,把结果格式化为xml数据形式,最后还要通过SOAP协议将结果数据发挥客户端,客户端通过浏览器即可查看该信息。如图:
从深层次上看,Web Service是一种新的Web应用程序分支,它们是自包含、自描述、模块化的应用,可以在网络(通常为Web)中被描述、发布、查找以及通过Web来调用。
Web Service便是基于网络的、分布式的模块化组件,它执行特定的任务,遵守具体的技术规范,这些规范使得Web Service能与其他兼容的组件进行互操作。它可以使用标准的互联网协议,像超文本传输协议HTTP和XML,将功能体
现在互联网和企业内部网上。Web Service平台是一套标准,主要目标是跨平台的可互操作性。为了达到这一目标,WebService完全基于XML(可扩展标记语言)、XSD(XMLSchema)等独立于平台、独立于软件供应商的标准,是创建可互操作的、分布式应用程序的新平台。你可以用你喜欢的任何语言,在你喜欢的任何平台上写Web Service。
1.2WebService的技术支持
WebService平台需要一套协议来实现分布式应用程序的创建。要实现互操作性,平台无关性,Web Service平台必须提供一套标准的类型系统,用于沟通不同平台、编程语言和组件模型中的不同类型系统。目前这些协议有:
1.2.1 XML和XSD
XML是可扩展的标记语言,是Web Service平台中表示数据的基本格式。其易于建立、易于分析和平台无关。XML是由万维网协会(W3C)创建,W3C制定的XML SchemaXSD 定义了一套标准的数据类型,并给出了一种语言来扩展这套数据类型。
XSD是 XML结构定义 ( XML Schemas Definition )。 XML Schema 是DTD 的替代品。XML Schema语言也就是XSD。XML Schema描述了XML文档的结构。可以用一个指定的XML Schema来验证某个XML文档,以检查该XML文档是否符合其要求。文档设计者可以通过XML Schema指定一个XML文档所允许的结构和内容,并可据此检查一个XML文档是否是有效的。XML Schema本身是一个XML 文档,它符合XML语法结构。可以用通用的XML解析器解析。
Web Service平台是用XSD来作为数据类型系统的。当用某种语言如Java、或C# 来构造一个Web Service时,为了符合Web Service标准,所使用的数据类型都必须被转换为XSD类型。并使用SOAP协议使其在不同平台和不同软件的不同组织间传递。
1.2.2 SOAP协议
SOAP(Simple Object Access Protocol)即简单对象访问协议,用于交换XML 编码信息的轻量级协议。主要有三个方面:XML-envelope为描述信息内容和如何处理内容定义了框架,将程序对象编码成为XML对象的规则,执行远程过程调用(RPC)的约定。SOAP可以运行在任何其他传输协议上。例如,可以使用 SMTP(简
单邮件传输协议)来传递SOAP消息。在传输层之间的头是不同的,但XML的有效负载保持相同。
简单对象访问协议(SOAP)是一种轻量的、简单的、基于 XML 的协议,它被设计成在 Web 上交换结构化的和固化的信息。 SOAP可以和现存的许多因特网协议和格式结合使用,包括超文本传输协议( HTTP),简单邮件传输协议(SMTP),多用途网际邮件扩充协议(MIME)。还支持从消息系统到远程过程调用(RPC)等大量的应用程序。
SOAP 包括三个部分:
SOAP 封装:它定义了一个框架 , 该框架描述了消息中的内容是什么,谁应当处理它以及它是可选的还是必须的。
SOAP 编码规则:它定义了一种序列化的机制,用于交换应用程序所定义的数据类型的实例。
SOAP RPC 表示:它定义了用于表示远程过程调用和应答的协定。 SOAP 消息基本上是从发送端到接收端的单向传输,但它们常常结合起来执行类似于请求/ 应答的模式。所有的 SOAP 消息都使用 XML 编码。一条 SOAP 消息就是一个包含有一个必需的 SOAP 的封装包,一个可选的 SOAP 标头和一个必需的 SOAP 体块的 XML 文档。
把SOAP绑定到 HTTP 提供了同时利用 SOAP 的样式和分散的灵活性的特点以及 HTTP 的丰富的特征库的优点。在 HTTP 上传送 SOAP 并不是说 SOAP 会覆盖现有的 HTTP 语义,而是 HTTP上的SOAP语义会自然的映射到 HTTP语义。在使用 HTTP 作为协议绑定的场合中, RPC 请求映射到 HTTP 请求上,而 RPC 应答映射到 HTTP 应答。然而,在 RPC 上使用 SOAP 并不仅限于 HTTP 协议绑定。
在本系统中,采用的是基于SOAP协议的直接的Webservice的调用。
1.2.3 UDDI
UDDI(Universal Description, Discovery and Integration)统一描述、发现和集成协议,是为解决Web服务的发布和发现问题而制订的新一代基于Internet的电子商务技术标准。它包含一组基于Web的、分布式的Web服务信息注册中心的实现标准,以及一组使企业能将自己提供的Web服务注册到该中心的实现标准。
UDDI 的目的是为电子商务建立标准;UDDI是一套基于Web的、分布式的、为Web Service提供的、信息注册中心的实现标准规范,同时也包含一组使企业能将自身提供的Web Service注册,以使别的企业能够发现的访问协议的实现标准。