`

关于JAX-WS JAX-RPC

阅读更多
JAX-RPC 是sun基于web services标准的早期实现。JAX-RPC1.1
JAX-WS 是sun基于web services标准的最新实现。JAX-WS是JAX-RPC1.1的后续版本。

JAX-WS在binding层使用的是the Java Architecture for XML Binding (JAXB, JSR 222),在parsing层,使用的是the Streaming API for XML (StAX, JSR 173),同时它还完全支持schema规范。

相同点?

在列出 JAX-RPC 1.1 和 JAX-WS 2.0 的差异前,我们应该首先讨论一下二者的相同之处:

JAX-WS 仍然支持 SOAP 1.1 over HTTP 1.1,因此互操作性将不会受到影响,仍然可以在网上传递相同的消息。
JAX-WS 仍然支持 WSDL 1.1,因此您所学到的有关该规范的知识仍然有用。WSDL 2.0 规范已经接近完成,但在 JAX-WS 2.0 相关工作结束时其工作仍在进行中。
区别何在?

SOAP 1.2
JAX-RPC 和 JAX-WS 都支持 SOAP 1.1。JAX-WS 还支持 SOAP 1.2。
XML/HTTP
WSDL 1.1 规范在 HTTP 绑定中定义,这意味着利用此规范可以在不使用 SOAP 的情况下通过 HTTP 发送 XML 消息。JAX-RPC 忽略了 HTTP 绑定。而 JAX-WS 添加了对其的支持。
WS-I Basic Profile
JAX-RPC 支持 WS-I Basic Profile (BP) V1.0。JAX-WS 支持 BP 1.1。(WS-I 即 Web 服务互操作性组织。)

新 Java 功能
JAX-RPC 映射到 Java 1.4。JAX-WS 映射到 Java 5.0。JAX-WS 依赖于 Java 5.0 中的很多新功能。
Java EE 5 是 J2EE 1.4 的后续版本,添加了对 JAX-WS 的支持,但仍然支持 JAX-RPC,这可能会对 Web 服务新手造成混淆。
数据映射模型
JAX-RPC 具有自己的映射模型,此模型大约涵盖了所有模式类型中的 90%。它没有涵盖的部分映射到了 javax.xml.soap.SOAPElement。
JAX-WS 的数据映射模型是 JAXB。JAXB 可保证所有 XML 模式的映射。
接口映射模型
JAX-WS 的基本接口映射模型与 JAX-RPC 的区别并不大,不过二者之间存在以下差异:
JAX-WS 的模型使用新的 Java 5.0 功能。
JAX-WS 的模型引入了异步功能。
动态编程模型
JAX-WS 的动态客户机模型与 JAX-RPC 的对应模型差别很大。很多更改都是为了认可行业需求:
引入了面向消息的功能。
引入了动态异步功能。
JAX-WS 还添加了动态服务器模型,而 JAX-RPC 则没有此模型。
消息传输优化机制(Message Transmission Optimization Mechanism,MTOM】

JAX-WS 通过 JAXB 添加了对新附件规范 MTOM 的支持。Microsoft 从来没有给 SOAP 添加附件规范;但似乎大家都支持 MTOM,因此应该能够实现附件互操作性。
处理程序模型
从 JAX-RPC 到 JAX-WS 的过程中,处理程序模型发生了很大的变化。
JAX-RPC 处理程序依赖于 SAAJ 1.2。JAX-WS 处理程序依赖于新的 SAAJ 1.3 规范。
Content-Type

SOAP 1.1 HTTP/SOAP 消息的媒体类型为“text/xml”,其编码处理是在 RFC2376 中定义的。
SOAP 1.1: HTTP/SOAP 请求的字符集由 HTTP 头中的 ContentType 字符集参数确定。在 SOAP 消息的 XML 声明部分定义的编码特性将被忽略。如果不指定 ContentType 字符集参数,字符集将被视为 US-ASCII。
SOAP 1.2 HTTP/SOAP 消息的媒体类型为“application/soap+xml”,其编码处理是在 RFC3023 中定义的。
SOAP 1.2: HTTP/SOAP 请求的字符集由 HTTP 头中的 ContentType 字符集参数确定。在 SOAP 消息的 XML 声明部分定义的编码特性将被忽略。如果未指定 ContentType 的字符集参数,将使用在 XML 声明部分定义的编码特性。如果 ContentType 字符集参数或 XML 声明的编码特性均未定义,它将被视为 UTF-8。

PS:以上部分内容参考http://www.ibm.com/developerworks/cn/webservices/ws-tip-jaxwsrpc.html
分享到:
评论

相关推荐

    使用JAX-WS(JWS)发布WebService

    使用JAX-WS(JWS)发布WebService 使用myeclipse开发java的webservice的两种方式 方式一: (此方式只能作为调试,有以下bug:jdk1.6u17?以下编译器不支持以Endpoint.publish方式发布document方式的soap,必须在...

    JavaWeb服务:Axis2中的JAXB和JAX-WS

    本文内容包括:Axis2中的JAXB在Axis2中使用JAX-WS结束语下载参考资料ApacheAxis2支持各种数据绑定技术,包括官方Java:trade_mark:标准JAXB2.x。Axis2还支持针对Web服务配置的Java标准JAX-WS2.x,作为其自有的配置...

    J2EE Web Services: XML SOAP WSDL UDDI WS-I JAX-RPC JAXR SAAJ JAXP

    J2EE Web Services: XML SOAP WSDL UDDI WS-I JAX-RPC JAXR SAAJ JAXP

    java webservice 详细开发示例介绍

    XML-Remote Procedure Call)目前已经被JAX-WS规范取代,JAX-WS 是JAX-RPC 的演进 版本,但 JAX-WS 并不完全向后兼容 JAX-RPC,二者最大的区别就是 RPC/encoded 样式的 WSDL,JAX-WS 已经不提供这种支持。JAX-RPC 的...

    jax-rpc soap头扩展 客户端,服务端例子

    jax-rpc soap头扩展 客户端,服务端例子 ws-tipjax2SOAPHandler.ear,ws-tip-extend.zip 官方也有下载的

    Java EE 6 规范

    •JAX-RPC 1.1 •JAX-WS 2.2 •JAX-RS 1.1 •JAXB 2.2 •JAXR 1.0 •Java EE Management 1.1 •Java EE Deployment 1.2 •JACC 1.4 •JASPIC 1.0 •JSP Debugging 1.0 •JSTL 1.2 •Web Services Metadata 2.1 •JSF...

    java11新特性.zip

    JAX-WS(也就是基于XML的Web服务的JavaAPI,JAXBXML绑定,JAX-WS允许开发者可以选择RPC- oriented或者message-oriented来实现自己的webservice) 2. JAF(也就是JavaBeans激活框架,一个专用的数据处理框架,它...

    JAVA的WebService支持CXF与SAAJ第三版

    这个教程将了如何使用CXF开发WebService,包括JAX-WS、JAX-RS规范、数字证书、MTOM附件传输、异步调用、异常处理、使用Axis+Spring解决RPC/Encode的问题向旧规范JAX-RPC的兼容,第三版版教程在最一开始分别介绍了...

    Spring 实现远程访问详解——rmi

    6. JAX-WS:Spring通过JAX-WS为远程Web服务提供支持(the successor of JAX-RPC, as introduced in Java EE 5 and Java 6)。 7. JMS:远程访问通过类JmsInvokerServiceExporter和JmsInvokerProxyFactoryBean使用JMS的...

    WebService大讲堂之Axis2系列教程

    Axis2是目前比较流行的WebService引擎。...本课程站在初学者角度介绍了Axis2的大多数常用的功能,例如,以多种方式编写和发布WebService、JAX-RPC、JAX-WS、复杂类型传输、WebService会话管理、Axis2模块等

    javaee7-samples:JAVA EE 7 课程演示

    (删减)JAX-RPC 1.1 - - JAX-WS 2.2a - -项目-邮件列表 JAXB 2.2 - JSR 222 -项目-邮件列表 Web 服务 1.4 - JSR 109 Web 服务元数据 2.1 - JSR 181 JAX-RS 2.0 - JSR 339 -项目-邮件列表- Jersey - @gf_jersey - ...

    wsdl和uddi的资料

    介绍wsdl和uddi的例子 快下呀,我没积分了

    Java_EE_6规范中文版

    6.13 JAX-WS 2.2 标准 6.14 JAX-RS 1.1标准 6.15 JAXB 2.2 标准 6.16 JAXR 1.0 标准 6.17 API 1.1标准 6.18 API 1.2 标准 6.19 JACC 1.4 标准 6.20 JASPIC 1.0 标准 6.21 JSR-45 标准 6.22 SJSTL 1.2 标准 6.23 ...

    webservice Axis2教程

    本课程站在初学者角度介绍了Axis2的大多数常用的功能,例如,以多种方式编写和发布WebService、JAX-RPC、JAX-WS、复杂类型传输、WebService会话管理、Axis2模块等。本课程共分为两部分,其中第一部分为Axis2基础知识...

    Spring中文帮助文档

    2.5.7. JAX-WS支持 2.6. 其他 2.6.1. 动态语言支持 2.6.2. 增强的测试支持 2.6.3. JMX 支持 2.6.4. 将Spring 应用程序上下文部署为JCA adapter 2.6.5. 计划任务 2.6.6. 对Java 5 (Tiger) 支持 2.7. 移植到...

    Spring API

    2.5.7. JAX-WS支持 2.6. 其他 2.6.1. 动态语言支持 2.6.2. 增强的测试支持 2.6.3. JMX 支持 2.6.4. 将Spring 应用程序上下文部署为JCA adapter 2.6.5. 计划任务 2.6.6. 对Java 5 (Tiger) 支持 2.7. 移植到...

    XML与Webservice实用参考

    发现介绍开源的资料太多了,基础知识反而少有关注,最近闲来无事,将多年工作中用到的比较实际的xml与webservice基础东西讲一些,基本的都有谈到,但ppt中分类不方便,因此流水账似地覆盖知识点。...

    Manning.Spring.in.Action.4th.Edition.2014.11.epub

    15.5.2. Proxying JAX-WS services on the client side 15.6. Summary Chapter 16. Creating REST APIs with Spring MVC 16.1. Getting REST 16.1.1. The fundamentals of REST 16.1.2. How Spring supports REST ...

Global site tag (gtag.js) - Google Analytics