微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

WebService之CXF二、客户端的生成与调用

一、使用CXF开发客户端

  1. 创建一个Java 项目,我创建的是CXFClient
  • 下面先介绍一下,CXF中wsdl2java命令环境配置以及wsdl2java工具的使用

用我自己电脑做一个实例,

一、环境配置

        新建CXF_HOME      D:\ProgramFiles\apache-cxf-2.7.10

        在CLAsspATH          %CXF_HOME%\lib

        在PATH中添加           %CXF_HOME%\bin

 

        验证:

                操作   win+R    ---> cmd  --->  回车   ---》 wsdl2java -v 

                结果 显示  wsdl2java - Apache CXF 2.7.2 

                证明配置成功

 

二、wsdl2java工具使用  

操作   win+R    ---> cmd  --->  回车   ---》 wsdl2java  -frontend jaxws21 -p  com.jiuzi.HelloCXF -d D:\  -client -autoNameResolution  http://localhost:8080/webservice/HelloCXF?wsdl

 

-p  指定其wsdl的命名空间,也就是要生成代码的包名: 

-d  指定要产生代码所在目录 

-client 生成客户端测试web service的代码 

-server 生成服务器启动web  service的代码 

-impl 生成web service的实现代码 

-ant  生成build.xml文件 

-all 生成所有开始端点代码:types,service proxy,service interface,server mainline,client mainline,implementation object,and an Ant build.xml file.

参考质料:http://cxf.apache.org/docs/wsdl-to-java.html

 

 

  1. 使用CXF生成客户端

我使用的简洁 的命令,没有带任何参数。在cmd中切换到该项目的src源码目录下,输入

wsdl2java http://127.0.0.1:8080/CXFWebservice/ws/readerService2?wsdl,如下图:



 回车,自动客户端生成,刷新myeclipse导入代码



 

3.编写客户端

package com.xlk.cxf.client.clientmain;

import com.xlk.cxf.service.IReaderService;
import com.xlk.cxf.service.Reader;
import com.xlk.cxf.service.impl.ReaderService;
/**
 * 
 * reader的客户端调用 </br> 
 * 类名: ReaderClient </br> 
 * 日期: 2014-2-19 上午10:46:13 </br> 
 * @author 许立亢 
 * @version 1.0
 */
public class ReaderClient {
	public static void main(String[] args) {
		ReaderService readerService = new ReaderService();
		 // 此处返回的只是远程WebService的代理
		 IReaderService iReaderService = readerService.getReaderServicePort();
		 Reader reader = iReaderService.getReader("123","许立亢");
		 System.out.println(reader.getName());
	}
}

 该代码是对,之前的服务端的获得实体类接口的调用:public Reader getReader(@WebParam(name="name") String name,@WebParam(name="password") String password);

 执行main函数,控制台显示


 说明调用成功。这就是一个完整的 CXF客户端对服务端 使用webservice接口的调用

 

 

 

 

项目的结构部署


 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐