WSDL生成Web Service java客户端

引用
最近做系统间数据导入导出时需要用到web service,所以需要通过wsdl生成java客户端来读取数据。


方法一: 使用xfire eclipse plugin生成java客户端

1 安装xfire eclipse plugin,update site:
http://dist.codehaus.org/xfire/update/

2 新建java project: WSTest. 我们用一个免费的web service服务做测试。 这是个手机号码归属地查询的wsdl
引用

3 File->New->Other ,选择XFire文件夹下的Code generation from WSDL document,打开代码生成向导
WSDL生成Web Service java客户端_第1张图片

4 点next,填入上面的wsdl地址,生成的java目录,包名。
WSDL生成Web Service java客户端_第2张图片

5 右击WSTest->properties->Xfire,把xfire所有的java包勾上。
WSDL生成Web Service java客户端_第3张图片

6 新建一个带main函数的class,
import com.wilson.MobileCodeWSClient;
public class Main {
	public static void main(String[] args) {
		MobileCodeWSClient client  = new MobileCodeWSClient();
		System.out.println(client.getMobileCodeWSSoap().getMobileCodeInfo("15801902188", null));
	}
}




方法二: ant生成xfire web service java client
引用
我们同样可以用一个ant脚本生成java 客户端,拷贝所有xfire jar到lib目录下。

<project name="XFire-WsGen" basedir="./WsGen" default="wsgen">
	<path id="maven.compile.classpath">
		<fileset file="${basedir}/lib/*.jar"/>
	</path>
	<!-- Remove classes directory for clean build -->
	<target name="clean" description="Prepare for clean build">
		<delete dir="${basedir}/client"/>
		<mkdir dir="${basedir}/client"/>
	</target>
	<target name="wsgen" depends="clean">
		<taskdef name="WsGenTask" classname="org.codehaus.xfire.gen.WsGenTask" classpathref="maven.compile.classpath"/>
		<WsGenTask outputDirectory="${basedir}/client" wsdl="http://webservice.webxml.com.cn/WebServices/MobileCodeWS.asmx?wsdl" package="com.wilson" overwrite="true"/>
	</target>
</project>

你可能感兴趣的:(java,eclipse,Web,ant,webservice)