java cxf axis_2款流行Web Service框架Axis和CXF

在开发Web Service程序之前,我们必须掌握一款Web Service框架来进行开发。事实上,每一种框架都有自己的特点,有自己的侧重,但是他们的共同之处在于对发布Web Service进行了封装,所以我们只需编写一个配置文件或者使用@WebService注解就可以发布Web Service。本文我们就来为大家介绍目前2款流行Web Service框架Axis和CXF。

我们先来看Axis,Axis有两个版本,Axis1和Axis2。

一、Axis1

Axis1有两种发布方式:

1)JWS方式

a.这种方式很简单,只需要将源码java文件放到AXIS_HOME下面,然后将后缀改为.jws,这样,Axis 会自动编译.jws文件,并把它自动加入到Java WebServie的服务中。

b.但是这种方式的缺点是:只能是java源代码,同时类中不能含有包名。

2)WSDD方式

1.写一个java类(需要引入axis的jar包)

2.配置web.xml文件(配置AxisServlet,AdminServlet,SOAPMonitorService和AxisHTTPSessionListener)

3.写一个deloy.wsdd文件,部署项目(tomcat启动就可以部署项目)

安装axis1到tomcat:

1.Axis官方网站:http://ws.apache.org/axis/,可以在官网下载最新1.4的包:axis-bin-1_4.zip

2.将解压后的axis-1_4\webapps\下的axis目录考到%TOMCAT_HOME%/Webapps/目录下

3.启动tomcat后在浏览器里输入http://localhost:port/axis

4.点击上图中的Validataion链接,页面上会提示已经有的包和缺少的包的信息,根据提示将必须的包下载全,将这些类包复制到%tomcathome%/webapps/axis/WEB-INF/lib/目录下,重新启动tomcat,直到Validation页面中看不到有Error与Warning的提示信息。

二、Axis2

客户端对于数据类型的不同有两种调用方式:RPCServiceClient和OMAbstractFactory方式。

1)RPC方式:

处理基本的数据类型,如String,int等

2)OM方式:

可处理基本数据类型和自定义数据类型(比如java实体对象):通过xml的参数形式进行传递(传递的参数需要转换为OMElement)

注:如果参数或返回值是List类型则需要进行手动处理转换(手动编写一个服务端对传递过来的参数进行处理,将传过来的OMElement手动转换为List类型,调用执行方法,然后将返回的List类型再转换为OMElement传回客户端)

Axis2发布文件(编写services.xml)

1.将官网下载的axis2.war包拷贝到tomcat_home/webapps下,运行即会解压

2.将其conf,modules和services文件夹拷贝到项目的WEB-INF下面,并将lib下的jar包拷贝到web-inf/lib下面

3.配置Web.xml(配置AxisServlet和AxisAdminServlet)

4.编写services下面的services.xml文件,指定要发布的类

三、CXF

CXF发布WebService有三种方式:main方式,基于和不基于Spring发布到容器

1)main方式

引入jar包,在接口和实现类上使用@WebService即可,发布完成后即可在浏览器中访问url,不需要启动tomcat等服务。

2)不基于Spring方式发布到容器

a)引入cxf的jar包,编写web.xml(配置自定义的CXFServlet,该CXFServlet需要继承CXFNonSpringServlet)

b)编写实体类,业务类和服务类(实体类需要和服务类在同一包下,否则报错)

c)启动Tomcat,即可发布服务

3)基于Spring方式发布到容器

a)web.xml配置(Spring配置,cxf封装的CXFServlet配置)

b)applicationContext-server.xml配置

serviceClass="com.ms.services.IHelloServices">

c)编写类

实体类

服务接口(类头使用@WebService)

服务实现(类头使用@WebService(endpointInterface="com.ms.services.IHelloServices"))

本文主要向大家介绍了2款Web Service流行框架Axis和CXF。我们在进行Web Service程序开发时可以择优选取适合自己的框架,往往能够使开发Web Service程序事半功倍。你也可以在本站的Web Service视频教程中找到相关的更多Web Service的框架学习和实践,开发出一款属于自己的Web Service!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值