加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

JAX-WS(二)之使用wsimport创建WebService客户端

发布时间:2020-12-16 22:38:52 所属栏目:安全 来源:网络整理
导读:客户端开发的通常过程是从已有的WSDL处理,创建辅助类JAXB对象和Service代理类,然后基于这些类开发自己的客户端应用。 开发步骤: 创建eclipse项目; 运行wsimport命令生成客户端代码; 通过代理调用服务; 创建Ecplise项目 使用Eclipse创建客户端项目JAX-W

客户端开发的通常过程是从已有的WSDL处理,创建辅助类JAXB对象和Service代理类,然后基于这些类开发自己的客户端应用。

开发步骤:

  1. 创建eclipse项目;
  2. 运行wsimport命令生成客户端代码;
  3. 通过代理调用服务;

创建Ecplise项目

使用Eclipse创建客户端项目JAX-WS-Client,目录结构如下:

运行wsimport工具

使用上篇博文创建的Web Service地址,命令行进入JAX-WS-Client项目目录,运行:

<pre name="code" class="java">wsimport -d ./bin -s ./src http://localhost:8808/HelloService?wsdl

 
 此时的目录结构如下: 
 

通过代理调用服务(这是不使用其他webservice框架支持,生成本地代码后,直接调用接口的方式)

<pre name="code" class="java">package net.oseye;
?
public class Main {
	<span style="font-family: Arial,Helvetica,sans-serif;">/**</span>
	 * @param args
	 */
	public static void main(String[] args) {
		HelloService helloService=new HelloService();
		String helloStr=helloService.getHelloPort().sayHello("oseye");
		System.out.println(helloStr);
	}
}


 
 

注意这里的getHelloPort()的方法,里面可以传入wsdl的地址。这样,wsdl的地址就能够作为配置参数了。


wsimport简介

wsimport也是在JDK的bin目录下的一个exe文件(Windows版),主要功能是根据服务端发布的wsdl文件生成客户端存根及框架,负责 与Web Service 服务器通信,并在将其封装成实例,客户端可以直接使用,就像使用本地实例一样。对Java而言,wsimport帮助程序员生存调用web service所需要的客户端类文件.java和.class。要提醒指出的是,wsimport可以用于非Java的服务器端,如:服务器端也许是C# 编写的web service,通过wsimport则生成Java的客户端实现。

命令参数说明:

  • -d 生成客户端执行类的class文件的存放目录
  • -s 生成客户端执行类的源文件的存放目录
  • -p 定义生成类的包名


互联网,对外公开免费webservice 汇总地址

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读