wsdl2java -client http://webservice.webxml.com.cn/WebServices/MobileCodeWS.asmx?wsdl
命令,就可以把该webservice接口导出,生成本地类,将生成的代码包复制到我们的工程代码中。 编写我们的测试代码: package com.yeetrack.cxf; import org.apache.cxf.jaxws.JaxWsProxyFactoryBean; import cn.com.webxml.MobileCodeWSSoap; /** * @author youthflies * yeetrack.com */ public class App { public static void main( String[] args ) { System.out.println( "使用apache-cxf测试webservice接口" ); //创建工厂类 JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean(); //设置要测试的接口类,MobileCodeWSSoap是由apache-cxf生成的 factory.setServiceClass(MobileCodeWSSoap.class); //设置webservice地址 factory.setAddress("http://webservice.webxml.com.cn/WebServices/MobileCodeWS.asmx"); MobileCodeWSSoap mobileCodeWSSoap = (MobileCodeWSSoap) factory.create(); //测试getMobileCodeInfo接口,需要两个参数,第一个为手机号码(下面的号码, 是随便写的),第二个为用户id(留空即可)。可以添加校验条件,如果要编写测试用例,可以利用junit或者testng。 System.out.println(mobileCodeWSSoap.getMobileCodeInfo ("13876546787", "")); } }运行结果如下图:
使用apache-cxf测试webservice接口 2013-4-29 11:16:22 org.apache.cxf.service.factory.ReflectionServiceFactoryBean buildServiceFromClass 信息: Creating Service {http://WebXml.com.cn/}MobileCodeWSSoapService from class cn.com.webxml.MobileCodeWSSoap 13876546787:海南 海口 海南移动全球通卡例子是用maven管理,下面是我的pom.xml文件。
4.0.0 com.yeetrack cxf 0.0.1-SNAPSHOT jar cxf http://maven.apache.org UTF-8 org.apache.geronimo.specs geronimo-servlet_2.5_spec 1.2 org.apache.cxf cxf-rt-frontend-jaxws 2.7.3 org.apache.cxf cxf-rt-transports-http 2.7.3 org.slf4j slf4j-api 1.5.8 org.slf4j slf4j-jdk14 1.5.8