`

JAVA中的Web服务规范:jax-ws|jax-rs|jaxm

 
阅读更多
JAVA 中共有三种WebService 规范,分别是JAXM&SAAJ;、JAX-WS(JAX-RPC)、JAX-RS。

下面来分别简要的介绍一下这三个规范。

(1.)JAX-WS:

JAX-WS(Java API For XML-WebService),JDK1.6 自带的版本为JAX-WS2.1,其底层支持为JAXB。早期的基于SOAP 的JAVA 的Web 服务规范JAX-RPC(Java API For XML-Remote Procedure Call)目前已经被JAX-WS 规范取代,JAX-WS 是JAX-RPC 的演进版本,但JAX-WS 并不完全向后兼容JAX-RPC,二者最大的区别就是RPC/encoded 样式的WSDL,JAX-WS 已经不提供这种支持。JAX-RPC 的API 从JAVA EE5 开始已经移除,如果你使用J2EE1.4,其API 位于javax.xml.rpc.*包。JAX-WS(JSR 224)规范的API 位于javax.xml.ws.*包,其中大部分都是注解,提供API 操作Web 服务(通常在客户端使用的较多,由于客户端可以借助SDK 生成,因此这个包中的API 我们较少会直接使用)。

WS-MetaData(JSR 181)是JAX-WS 的依赖规范,其API 位于javax.jws.*包,使用注解配置公开的Web 服务的相关信息和配置SOAP 消息的相关信息。

(2.)JAXM&SAAJ;:

JAXM(JAVA API For XML Message)主要定义了包含了发送和接收消息所需的API,相当于Web 服务的服务器端,其API 位于javax.messaging.*包,它是JAVA EE 的可选包,因此你需要单独下载。SAAJ(SOAP With Attachment API For Java,JSR 67)是与JAXM 搭配使用的API,为构建SOAP 包和解析SOAP 包提供了重要的支持,支持附件传输,它在服务器端、客户端都需要使用。这里还要提到的是SAAJ 规范,其API 位于javax.xml.soap.*包。JAXM&SAAJ; 与JAX-WS 都是基于SOAP 的Web 服务,相比之下JAXM&SAAJ; 暴漏了SOAP更多的底层细节,编码比较麻烦,而JAX-WS 更加抽象,隐藏了更多的细节,更加面向对象,实现起来你基本上不需要关心SOAP 的任何细节。那么如果你想控制SOAP 消息的更多细节,可以使用JAXM&SAAJ;,目前版本为1.3。

(3.)JAX-RS:

JAX-RS 是JAVA 针对REST(Representation State Transfer)风格制定的一套Web 服务规范,由于推出的较晚,该规范(JSR 311,目前JAX-RS 的版本为1.0)并未随JDK1.6 一起发行,你需要到JCP 上单独下载JAX-RS 规范的接口,其API 位于javax.ws.rs.*包。这里的JAX-WS 和JAX-RS 规范我们采用Apache CXF 作为实现,CXF 是Objectweb Celtix和Codehaus XFire 合并而成。CXF 的核心是org.apache.cxf.Bus(总线),类似于Spring 的ApplicationContext,Bus 由BusFactory 创建,默认是SpringBusFactory 类,可见默认CXF是依赖于Spring 的,Bus 都有一个ID,默认的BUS 的ID 是cxf。你要注意的是Apache CXF2.2 的发行包中的jar 你如果直接全部放到lib 目录,那么你必须使用JDK1.6,否则会报JAX-WS 版本不一致的问题。对于JAXM&SAAJ; 规范我们采用JDK 中自带的默认实现。
分享到:
评论

相关推荐

    java webservice 详细开发示例介绍

    除了JAX-WS之外,Java中还有另外两个规范也用于处理基于SOAP的WebService:JAXM(Java API for XML Messaging)和SAAJ(SOAP with Attachments API for Java)。 1. **JAXM**:主要定义了发送和接收消息所需的API,...

    JAVA 的WebService 支持

    JAVA支持多种WebService规范,主要包括JAXM&SAAJ、JAX-WS(JAX-RPC)、JAX-RS等几种类型。 ##### JAX-WS - **定义**:JAX-WS(Java API for XML Web Services)是JDK 1.6自带的WebService规范之一,版本为2.1,底层...

    WebService的几种不同实现方式

    3. JAX-RS(Java API for RESTful Web Services):JAX-RS是为REST风格的Web服务制定的规范,它较晚推出,并且不随JDK1.6一起发行,需要单独下载。JAX-RS的目标是简化Web服务的构建过程。 Apache CXF是实现上述规范...

    JAVA的WebService支持CXF与SAAJ第三版

    Java中有多种Web服务规范,这些规范覆盖了从传统的基于SOAP的服务到现代的RESTful服务。接下来将详细介绍这些规范: ##### 1. JAX-WS - **定义**:JAX-WS (Java API for XML Web Services) 是Java标准库中的一部分...

    JAVA的WebService支持讲解

    总结来说,JAVA的WebService支持通过JAX-WS、JAXM&SAAJ以及JAX-RS三种规范,为开发者提供了强大的工具和API集,来构建和部署符合SOA原则的Web服务。这些规范的共同作用,使得JAVA开发者能够在不同的应用场景和需求下...

    web Service 实例教程

    3. **JAX-RS**(Java API for RESTful Web Services):JAX-RS是基于Java的RESTful Web服务规范,用于创建REST风格的Web服务。 ### 开发工具 开发Java Web服务通常使用集成开发环境(IDE)如Myeclipse10。此外,还...

    java实现soa技术

    1. JAX-WS(Java API for XML Web Services):JAX-WS是构建SOAP基于XML的Web服务的Java API。它支持使用注解的方式定义和操作Web服务,简化了SOAP服务的开发。JAX-WS2.1是JDK 1.6中自带的版本,底层使用JAXB(Java ...

    Webservice-CXF实用手册学习大全

    - JAX-WS:JAX-WS(Java API for XML Web Services)是基于SOAP的WebService规范,用于定义、创建、发布和调用WebService。它取代了较早的JAX-RPC,并提供更面向对象的服务开发方式。 - JAX-RS:JAX-RS(Java API ...

    WebService完整教程.pdf

    JAX-RS(Java API for RESTful Web Services)是Java针对REST(Representational State Transfer)风格制定的一套Web服务规范。JAX-RS允许开发者创建RESTful风格的服务,提供了对HTTP方法的映射、资源的路径映射、...

    WebService介绍

    - **概述**:JAX-RS是一种用于构建RESTful Web服务的Java API。 - **特点**:更适合现代Web应用的需求,支持轻量级的HTTP交互。 - **版本**:JSR 311,当前版本为1.0。 - **API位置**:`javax.ws.rs.*`包内。 #...

    CXF实用手册

    1. JAX-WS(Java API for XML Web Services):这是Java开发Web服务的最常用规范,用于简化开发过程,它取代了早期的JAX-RPC规范。JAX-WS使用注解来定义Web服务的元数据,并且它对客户端开发提供了良好的支持。JAX-...

    Web Service 学习笔记

    Web Service 即 web 服务,它是一种跨编程语言和跨操作系统平台的远程调用技术。...Java 中共有三种 Web Service 规范: - JAX-WS(JAX-RPC): 基于 xml 数据 - JAXM&SAAJ - JAX-RS:基于 xml 或 json 数据

    CXF使用手册

    在Java中,WebService的实现主要依靠三种规范:JAXM&SAAJ、JAX-WS(包括之前的JAX-RPC)、JAX-RS。JAX-WS(Java API for XML-WebService)是较新的规范,提供了更抽象、面向对象的服务实现方式。JAX-WS底层基于JAXB...

    Web Service基础教程带实例

    3. JAX-RS(Java API for RESTful Web Services),是针对RESTful(Representational State Transfer,表现层状态转换)架构风格提供的Web服务规范。JAX-RS主要用于开发RESTful Web服务,它允许开发者利用轻量级的...

    Apache CXF 中文教程

    Java Web服务规范主要包括JAXM&SAAJ、JAX-WS和JAX-RS三种。JAXM(Java API for XML Messaging)提供了SOAP消息的发送和接收功能,而SAAJ(SOAP with Attachments API for Java)则用于构建和解析SOAP消息。JAXM和...

    cxf使用手册,实用教程

    2. **JAXM & SAAJ**(JAXM:Java API for XML Messaging;SAAJ:SOAP with Attachments API for Java):JAXM定义了用于发送和接收XML消息的API,而SAAJ则为构建和解析SOAP消息提供了支持,包括附件传输功能。这两个...

Global site tag (gtag.js) - Google Analytics