Webservice三种规范

•1、JAX-WS

JAX-WS 是JAX-RPC 的演进版本,但JAX-WS 并不完全向后兼容JAX-RPC,二者最大的区别就是RPC/encoded 样式的WSDL,JAX-WS 已经不提供这种支持。

•2、JAXM&SAAJ

JAXM(JAVA API For XML Message)主要定义了包含了发送和接收消息所需的API,SAAJ(SOAP With Attachment API For Java,JSR 67)是与JAXM 搭配使用的API,为构建SOAP 包和解析SOAP 包提供了重要的支持,支持附件传输等,JAXM&SAAJ 与JAX-WS 都是基于SOAP 的Web 服务,相比之下JAXM&SAAJ 暴漏了SOAP更多的底层细节,编码比较麻烦,而JAX-WS 更加抽象,隐藏了更多的细节,更加面向对象,实现起来基本上不需要关心SOAP 的任何细节。

•3、JAX-RS

JAX-RS 是JAVA 针对REST(Representation State Transfer)风格制定的一套Web 服务规范。

Webservice四种框架

1、Apache Axis1

Axis本质上就是一个SOAP引擎(Apache Axis is an implementation of the SOAP),提供创建服务器端、客户端和网关SOAP操作的基本框架。但Axis并不完全是一个SOAP引擎,它还包括:

l  是一个独立的SOAP服务器。

l  是一个嵌入Servlet引擎(例如Tomcat)的服务器。

l  支持WSDL。

l  提供转化WSDL为Java类的工具。

l  提供例子程序。

l  提供TCP/IP数据包监视工具。

2、Apache Axis2

Apache Axis2相比Apache Axis1更加有效、更加模块化、更加面向xml,支持容易插件模块扩展新功能和特性,例如安全和可靠。Apache Axis2是基于Apache AXIOM,它是一个高性能、pull-based XML对象模型。Apache Axis2的关键特性:

l  解析xml更快。采用自己的对象模型和StAX (Streaming API for XML)。

l  更低的内存占用。

l  支持热部署。新服务加入到系统,无需重启服务。

l  支持异步 webservice、

l  MEP支持,灵活支持在WSDL 2.0定义的Message Exchange Patterns (MEPs)

l  更加灵活。引擎给开发人员提供了充足的自由度可扩展客户头信息处理、系统管理、

l  更加稳定性。

l  传输框架不依赖于具体协议。为集成和传输协议(SMTP, FTP, message-oriented middleware, etc)有一个简单和抽象,引擎核心是完全独立于具体的传输协议。

l  支持WSDL。支持WSDL1.1、WSDL2.0。

l  方便集成其他组件(Add-ons)。几个web services已经被集成,包括:WSS4J for security (Apache Rampart), Sandesha for reliable messaging,Kandula which is an encapsulation of WS-Coordination, WS-AtomicTransaction and WS-BusinessActivity.

l  良好的扩展性。

3、Codehaus XFire

XFire核心是一个轻量的基于STAX消息处理模型,用来与SOAP消息交互,它支持不同类型的绑定机制、容器和传输协议。

支持webservice标准- SOAP, WSDL, WS-I Basic Profile, WS-Addressing, WS-Security, etc.

l  高性能SOAP STACK

l  可插拔绑定POJOs, XMLBeans, JAXB 1.1, JAXB 2.0, and Castor support

l  通过Java1.5 和1.4(Commons attributes JSR 181 syntax)使用JSR 181 API配置服务

l  支持多中传输协议- HTTP, JMS, XMPP, In-JVM, etc.

l  可嵌入的和直观的API

l  支持Spring, Pico, Plexus, and Loom

l  支持JBI

l  客户端和服务端stub代码生成

l  支持JAX-WS early access

4、Apache CXF

Apache CXF是一个开源服务框架。CXF可用前端编程APIs开发服务,比如:JAX-WS and JAX-RS,主要特性包括:

l  支持Web services标准。包括:SOAP、the WSI Basic Profile、WSDL、WS-Addressing、WS-Policy、WS-ReliableMessaging、WS-Security、WS-SecureConversation 和WS-SecurityPolicy.

l  支持不同类型前端开发模型。CXF实现了JAX-WS APIs,支持JAX-RS开发。

l  容易使用。CXF设计的简洁和直观,具有简洁APIs迅速的构建基于代码的服务,Maven插件使得工具集成更加容易、JAX-WS API支持、Spring 2.x XML使得配置更加容易。

l  支持二进制和遗留协议。CXF被设计为可插拔的架构,在不同的传输协议结合下,不仅支持XML,也支持非XML类型绑定,例如:JSON和CORBA。

webservice规范及webservice框架相关推荐

  1. WCF实现RESTFul Web Service(三):RESTful WebService VS SOAP WebService

    SOAP SOAP最早是针对RPC的一种解决方案,简单对象访问协议,很轻量,同时作为应用协议可以基于多种传输协议来传递消息(Http,SMTP等).但是随着SOAP作为WebService的广泛应用, ...

  2. CXF发布RestFul WebService和SOAP WebService

    CXF发布RestFul WebService和SOAP WebService Apache CXF可以发布多种协议的WebService,Spring支持整合cxf到项目中,可以简化后台构架,以下是 ...

  3. 【WebService】webservice常用注解——@WebService和@WebMethod

    webservice中常用注解 web服务涉及到的注解有:@WebService    @WebMethod     @Oneway   @WebParam    @WebResult      @H ...

  4. 使用CXF框架Jax-rs规范编写WebService服务端

    前提是项目SSM框架搭建好. 搭建cxf框架, 一.首先,将框架所需要的jar导入,pom.xml文件中 <!-- cxf 进行rs开发 必须导入 --> <dependency&g ...

  5. JAVA的WebService规范JAX-WS

    JAX-WS的服务端.客户端双方传输数据使用的SOAP消息格式封装数据. 一.下载apache-cxf-3.1.4.zip. 二.编写服务端 1.编写一个Web Service用来传输参数的类 pac ...

  6. JAX-WS RI组件开发基于JAX-WS规范的WebService服务入门程序

    一.服务端 创建一个普通的web项目:JaxWS_ri_calculator_server 先把服务端项目完成之后完整的结构示意图展示出来,方便你们做参考: 1.创建提供webservice服务的服务 ...

  7. REST WebService与SOAP WebService的比较

    http://www.360doc.com/content/12/0530/17/1369263_214781509.shtml 在SOA的基础技术实现方式中WebService占据了很重要的地位,通 ...

  8. webservice实例java_Java WebService(实战) 简单实例

    一.准备工作(以下为本实例使用工具) 1.MyEclipse10.7.1 2.JDK 1.6.0_22 二.创建服务端 1.创建[Web Service Project],命名为[TheService ...

  9. Webservice接口、Webservice例子

    Webservice是系统对外的接口,比如你要从别的网站或服务器上获取资源或信息,别人肯定不会把数据库共享给你,他只能给你提供一个他们写好的方法来获取数据,你引用他提供的接口就能使用他写好的方法,从而 ...

  10. java webservice 作用_@WebService这个标签的作用是什么

    当实现 Web Service 时,@WebService 注释标记 Java 类:实现 Web Service 接口时,标记服务端点接口(SEI). (声明webservice服务) 要点: • 实 ...

最新文章

  1. 安森美电量计采用内部电阻跟踪电流--电压HG-CVR
  2. 记录一次最新版MySQL-server-5.6.20-1.el6.x86_64.rpm的安装
  3. Large Kernel Matters
  4. 如何给你的为知笔记添加一个漂亮的导航目录
  5. mysql数据库的安装和配置文件_MySQL 数据库安装与配置详解
  6. Spring Boot 多数据源(读写分离)入门
  7. 读《大道至简》第四章有感
  8. 微信小程序之 Classify(商品属性分类)
  9. 问题处理:VMware Workstation和Device / Credential Guard不兼容
  10. 最小采样频率计算公式_SPC子组样本量大小和抽样频率
  11. 使用snap安装microk8s
  12. 基于阿里云LinkWAN实现设备上云(1) LinkWAN平台简析
  13. 【只摘金句】Linux开发模式带给我们的思考
  14. Problem B. L04-02 一元二次方程的根(重点在于求虚根---初学简单版)
  15. 又一重量级国字头赛事!中国大学生计算机设计大赛全面启动
  16. 油菜花系统服务器能删除内容吗,油菜花能吃吗,油菜花有什么用
  17. 线性代数——向量、向量加法、向量数乘
  18. 股票基本名词,你知道多少?
  19. OpenJWeb2.61 Java Web应用快速开发平台全部开源公告
  20. linux启动mysql1820_Linux下安装mysql

热门文章

  1. 医疗行业用户容灾备份方案
  2. php h5 调用摄像头_怎样使用H5调用摄像头
  3. SpringBoot非官方教程 | 终章:文章汇总
  4. sae nodejs mysql_通过新浪云部署NideShop微信小程序商城(基于Node.js+MySQL+ThinkJS)
  5. STM32F205 PWM配置
  6. s3c2440linux2.6mmc/sd驱动程序
  7. 离散域下的泊松方程求解(python实现)
  8. Spring教程动画文字版2
  9. matlab利用gui谐波分析,matlab中fft谐波分析
  10. adapterview android,[Android]ListView+AdapterView