码迷,mamicode.com
首页 > Web开发 > 详细

简单web服务开发(JWS,CXF,AXIS)

时间:2019-01-14 15:00:51      阅读:250      评论:0      收藏:0      [点我收藏+]

标签:服务器端   apach   新建工程   none   技术分享   oca   调用   服务   localhost   

(一)利用JWS开发web服务

开发Web服务器端:

  1.定义接口HelloWorld,使用@WebService注解修饰接口名,使用@WebMethod修饰需要对外发布的方法。

 技术分享图片

 

  2.HelloWorld接口实现类

 技术分享图片

 

  3.发布类HelloWorldService

 技术分享图片

 

  4.编译运行HelloWorldService 类之后查看WSDL文档http://localhost:8080/ HelloWorld?wsdl

 技术分享图片

 

 

客户端代码:

1.生成客户端所需要的文件

新建工程WebServerClient,进入工程的src目录,在DOS窗口输入:wsimport -keep http://localhost:8080/HelloWorld?wsdl动态生成客户端需要的文件。wsimport是JDK1.6自带的命令。

 技术分享图片技术分享图片

 

 

2.编写客户端代码并调用

 

调用代理中的sayHello()方法,接收到hello,likeyu

 

 技术分享图片

 

 

(二)利用CXF开发web服务

1.利用CXF开发Web Service服务端:

    1. 准备开发需要的jar包

 技术分享图片

 

      2.开发webservice接口

 技术分享图片

 

      3.编写Web服务接口的实现

 技术分享图片

 

      4.暴露Web Service的函数,运行函数暴露Web Service:

 技术分享图片

技术分享图片

 

 

2.使用CXF开发Web Service客户端

 技术分享图片

 

3.在客户端编写测试代码并运行

 技术分享图片

 

题目(一):3.利用axis开发web服务

1.Apache Axis下载和安装

 

 技术分享图片技术分享图片

技术分享图片

 

 

 

2.编写服务

 技术分享图片

 

3.发布服务

 技术分享图片

技术分享图片

技术分享图片

技术分享图片

 

4.测试方法和运行结果

 技术分享图片

 

 

错误总结:

  1. 进行axis2项目测试的时候,首先是生成的.class文件无法运行,后来重新独立的项目代码,把package去掉,在命令行中编译,再把.class文件移动到pojo中,就正确的显示正确了。
  2. 进行cxf项目测试时,因为版本问题,新生成的客户端调用代码不能够按照预想的直接去调用sayhello方法,后来通过查看wsdl文档和通过wsdl2新生成项目文件,在调用方法时,新增加了一个getHelloWorldPort方法后成功调用
  3. Axis2项目测试的最后是使用pojo方法,但是在实际操作的时候,在Apache网页中调用方法,参数传递一直存在问题,一直用?name=likeyu传递参数去使用,后来也是通过点开查看xml文件,尝试去使用文件中标注的name=args,即?args=likeyu,发现参数传递成功,测试完成。

简单web服务开发(JWS,CXF,AXIS)

标签:服务器端   apach   新建工程   none   技术分享   oca   调用   服务   localhost   

原文地址:https://www.cnblogs.com/STK0210/p/10265648.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!