第一步:写MyWebService接口
package cxf;
import javax.jws.WebService;
@WebService
public interface MyWebService {
String helloWord(String name);
String getMessage(String name);
}
第二步:写实现类
package cxf;
import javax.jws.WebService;
@WebService(endpointInterface="cxf.MyWebService")
public class MyWebServiceImpl implements MyWebService {
@Override
public String helloWord(String name) {
System.out.println("MyWebService helloWord接口调用成功");
return name+"helloWord!";
}
@Override
public String getMessage(String name) {
System.out.println("MyWebService getMessage接口调用成功");
return name+"sayHello!";
}
}
第三步:发布webService
package cxf;
import javax.xml.ws.Endpoint;
public class MyWebServicePublish {
public static void main(String[] args) {
String address="http://自己的ip:端口/MyWebService";
Endpoint.publish(address, new MyWebServiceImpl());
System.out.println("MyWebService 发布成功!");
}
}
第四步:客户端调用
package cxf;
import java.net.MalformedURLException;
import java.net.URL;
import javax.xml.namespace.QName;
import javax.xml.ws.Service;
public class MyWebServiceClient {
private static final String ENDPOINTADDRESS="http://自己的ip:端口/MyWebService?wsdl";
private static final String NAMESPACEURI="http://cxf/";
private static final QName SERVICE_NAME=new QName(NAMESPACEURI,"MyWebServiceImplService");
private static final QName POINT_NAME=new QName(NAMESPACEURI,"MyWebServiceImplPort");
public static void main(String[] args) {
try {
URL url=new URL(ENDPOINTADDRESS);
Service service=Service.create(url, SERVICE_NAME);
MyWebService myWebService=service.getPort(POINT_NAME,MyWebService.class);
String result=myWebService.helloWord("zzx");
System.out.println(result+"客户端调用服务器的helloWord接口成功!");
result=myWebService.getMessage("zzx");
System.out.println(result+"客户端调用服务器的getMessage接口成功!");
} catch (MalformedURLException e) {
e.printStackTrace();
}
}
}