java调用webservice(使用Axis2框架构建WebService)

java调用webservice

点击上方蓝色文字关注我们吧

WebService是什么

Web services 是建立可互操作的分布式应用程序的新平台 ,表面上看Web service 就是一个应用程序,它向外界暴露出一个能够通过Web进行调用的API。 

什么时候使用WebService

企业里经常都要把用不同语言写成的、在不同平台上运行、不同软件厂商生产的各种软件需要集成起来,各个程序之间需要互相通信,获取或发送数据,根据WebService的跨平台、跨语言、可远程调用的特性、通过WebService可以很容易的集成不同结构的应用程序。比如我们在项目实施过程中遇到的PDM系统与MES系统之间传递物料等信息,PDM系统和ERP系统传递工时等信息时就可以使用WebService为各个程序提供集成API。

WebService开发框架

开发webservice应用程序中离不开框架的支持, 框架有很多种,比如Axis 、Axis2、CXF、XFire等。Axis与XFire已随着技术不断的更替,都已不再更新,当前以axis2与cxf最为常用,也只有axis2和cxf官方有更新。

Axis2:

Axis2是Apache下的一个重量级WebService框架,准确说它是一个Web Services / SOAP / WSDL 的引擎,是WebService框架的集大成者,它能不但能制作和发布WebService,而且可以生成Java和其他语言版WebService客户端和服务端代码。这是它的优势所在。但是,这也不可避免的导致了Axis2的复杂性,使用过的开发者都知道,它所依赖的包数量和大小都是很惊人的,打包部署发布都比较麻烦,不能很好的与现有应用整合为一体。但是如果你要开发Java之外别的语言客户端,Axis2提供的丰富工具将是你不二的选择。

CXF:
CXF 框架是一种基于 Servlet 技术的 SOA 应用开发框架,要正常运行基于 CXF 应用框架开发的企业应用,除了 CXF 框架本身之外,还需要 JDK 和 Servlet 容器的支持。CXF不但是一个优秀的Web Services / SOAP / WSDL 引擎,也是一个不错的ESB总线,为SOA的实施提供了一种选择方案,当然他不是最好的,它仅仅实现了SOA架构的一部分。CXF更注重开发人员的工效(ergonomics)和嵌入能力(embeddability)。大多数都可以通过配置API来完成,替代了比较繁琐的XML配置文件, Spring的集成性经常的被提及,CXF支持Spring2.0和CXF’s API和Spring的配置文件可以非常好的对应。

这些框架都有自己的使用范围和实用性,根据企业实际情况,结合框架特性选择合适的框架能事半功倍。简单来说,如果你需要多语言的支持,应该选择AXIS2。如果你需要把你的实现侧重和Spring集成,CXF就是更好的选择。

WebService开发

WebService开发分为服务端开发和客户端开发;

WebService服务端开发
1. 创建Web工程

2. 配置web.xml

3. 引入jar包
 

4. 创建service.xml文件
 

5. 写服务端代码

实现类
 
6. 编写service.xml文件内容
 
7. 用tomcat发布服务
如下图表示服务发布成功。

WebService客户端开发
当服务调用方获取服务端的wsdl后,可以用RPC方式,也可以用wsdl2java工具生成客户端代码方式等访问服务。
RPC方式:

集成测试结果

专注军工智能  鼎力中国制造
图文 | 来源于  PLM产品线
PLM技术顾问 解改月

长按二维码识别关注

java调用webservice相关文章

版权声明

您可能感兴趣