1:下载cxf包放入项目中
http://cxf.apache.org/download.html
2:新建java项目,编写服务端,发布
package com.dfjk.server;
import javax.xml.ws.Endpoint;
public class DeployPersonService {
/**
* function: 发布WebService
* @author e421083458
*/
public static void deployService(){
System.out.println("Service start......");
Iperson service = new PersonImpl();
String address = "http://10.98.6.207:9000/helloPerson";
Endpoint.publish(address, service);
}
public static void main(String args[])throws InterruptedException{
//发布WebService
deployService();
// System.out.println("server ready......");
// Thread.sleep(1000*120);
// System.out.println("System exiting...");
// //休眠60秒后退出
System.out.println("发布完毕!");
// System.exit(0);
}
}
3:http://10.98.6.207:9000/helloPerson?wsdl
如果没报错,表示服务发布成功,用360浏览器查看源代码,另存为wsdl文件
4:用wsdl2java 根据wsdl文件生成 服务端代码,客户端代码
wsdl2java用法:
wsdl2java -p com -d src -all aa.wsdl
-p 指定其wsdl的命名空间,也就是要生成代码的包名:
-d 指定要产生代码所在目录
-client 生成客户端测试web service的代码
-server 生成服务器启动web service的代码
-impl 生成web service的实现代码
-ant 生成build.xml文件
-all 生成所有开始端点代码:types,service proxy,,service interface, server mainline, client mainline,
implementation object, and an Ant build.xml file.
5:注意生成代码是,包名称要相同否则有问题,可以在wsdl中看包路径,targetNamespace属性看