构建基于CXF的WebService服务(2)-- 利用CXF提供的wsdl2java工具创建客户端

1、环境配置

将CXF_HOME/bin加入到环境变量path中,如我的是D:\Java\Jar\apache-cxf-2.7.7\bin

打开cmd输入 wsdl2java -v 出现如下信息表示配置成功


2、wsdl2java的使用

(1)创建一个"Java Project"项目,暂且命名为client,将CXF用到的jar包引入进来,去掉jetty相关包,加入geronimo-jaxws_2.2_spec-1.1.jar包

(2)打开命令行工具,将目录切换到client项目中的src目录下


(3)在cmd中输入 wsdl2java http://localhost:8080/hello?wsdl 回车,稍等一会儿出现下面的画面,表示创建成功

构建基于CXF的WebService服务(2)-- 利用CXF提供的wsdl2java工具创建客户端_第1张图片

(4)在MyEclipse中选中项目,点击刷新,就可以看到wsdl2java自动为我们创建的类了

构建基于CXF的WebService服务(2)-- 利用CXF提供的wsdl2java工具创建客户端_第2张图片

(5)这时项目中有错误,是因为java自带的包与geronimo-jaxws_2.2_spec-1.1.jar冲突导致的,这是需要调整一下jar的优先级,让项目优先加载我们自己导入的包

(6)打开项目目录下的.classpath文件将移到我们引入的jar的最下面,然后再刷新项目就可以了



	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	

3、创建客户端

package com.tiamaes.webservice.client;

import com.tiamaes.webservice.test.impl.HelloWorldService;

/**  
 * 

类描述: 客户端调用代码

*

修改人:王成委

*

修改时间:2014-5-12 上午09:29:21

* @version */ public class HelloWorldClient { public static void main(String[] args) { // TODO Auto-generated method stub HelloWorldService serviceFactory = new HelloWorldService(); com.tiamaes.webservice.test.HelloWorldService service = serviceFactory.getHelloWorldServiceImplPort(); String result = service.syaHello("Jaune"); System.out.println(result); } }
以上就是客户端调用的代码,CXF自动生成的代码中HelloWorldService接口跟工厂类名称相同,如果看着不爽可以自己改下。


你可能感兴趣的:(WebService)