利用jdk自带的工具生成客户端
命令参数说明
-keep:是否生成java源文件
-d:指定.class文件的输出目录
-s:指定.java文件的输出目录
-p:定义生成类的包名,不定义的话有默认包名
-verbose:在控制台显示输出信息
-b:指定jaxws/jaxb绑定文件或额外的schemas
-extension:使用扩展来支持SOAP1.2
命令
wsimport -keep -s D:\GitLibrary\ideaProject\AnswerPool\src\main\java -p com.zmf.webservice.autoClient -verbose http://10.1.18.76:8005/services/TestService?wsdl
最后生成的代码如下
服务端服务的代码逻辑
调用
package com.zmf.webservice.client;
import com.zmf.webservice.autoClient.TestService;
import com.zmf.webservice.autoClient.TestWebServiceImplService;
import java.net.MalformedURLException;
import java.net.URL;
public class TestAutoClient {
public static void main(String[] args) throws MalformedURLException {
//可以指定IP和端口,但是不能换服务
URL url = new URL("http://10.1.18.76:8005/services/TestService?wsdl");
//将url传入
TestWebServiceImplService ss = new TestWebServiceImplService(url);
//也可以不传url,调用的就是生成时的那个IP和端口
TestWebServiceImplService sss = new TestWebServiceImplService();
TestService s = ss.getTestServicePort();
System.out.println(s.sendMessage("jack"));
}
}