一、把XFire及其需要的包都拷过来
下载的XFire包,及其解压后,lib目录下全部的包都拷过来
在项目的根目录下建立一个ant文件(BUILD.XML),必须指出lib目录所在的路径和服务器端的wsdl路径:
<project name="struts-hibernate-eg" basedir="." default="help">
<path id="build.classpath">
<fileset file="lib/*.jar" />
</path>
<!-- Help -->
<target name="help">
<echo message="BASEDIR:${basedir}"/>
<echo message="targer: help"/>
<echo message="usage: ant "/>
</target>
<!-- Wsgen -->
<target name="Wsgen">
<taskdef name="wsgen" classname="org.codehaus.xfire.gen.WsGenTask" classpathref="build.classpath" />
<wsgen outputDirectory="bin" wsdl="http://192.168.0.16:8080/MathService/services/MathService?wsdl" package="client" />
</target>
</project>
二、运行通过ant运行这个文件,即通过服务器的wsdl类热核,生成客户端所需要的类
其中MathServiceClient.java和MathServicePortType.java,这两个类是最重要的,其他的可要可不要
三、编写自己的类,调用客户端类,即可以远程访问Web Service,并调用其对应的类
public class TestClient {
public static void main(String[] args) {
MathServiceClient msc=new MathServiceClient();
MathServicePortType msp=msc.getMathServiceHttpPort();
System.out.println(msp.add(100, 200));
System.out.println(msp.sub(100, 200));
}
}