开发服务端代码
1. web.xml文件中添加cxf的servlet
2. 定义接口
@WebService(targetNamespace="http://UserInfo.ws.com",name="UserInfoWebServiceImpl",
portName="UserInfoWebServicePort",serviceName="UserInfoWebService")
public interface UserInfoWebService {
public void sayWord();
public List findAll();
}
3.实现接口
public class UserInfoWebServiceImpl implements UserInfoWebService {
private UserInfoService userInfoService = new UserInfoService();
@Override
public void sayWord() {
System.out.println("hell world");
}
@Override
public List findAll() {
return userInfoService.findAll();
}
}
4.在applicationContext.xml文件中配置webservice接口
serviceClass值是在服务器端程序中的位置
5.启动应用
访问webservice http://127.0.0.1:8080/wsserver/ws
这是在web.xml文件中配置的
开发客户端代码
1. 利用wsdl2java生成客户端的代码
wsdl2java -d . http://127.0.0.1:8080/wsserver/ws/userInfo?wsdl
wsdl2java在cxf里
在生成的文件夹中可能会有很多java文件,但我们只需要接口的实现类和相应的实体类文件,将接口的实现类和实体类放在相应的包中
2.在applicationContext文件中配置webservice接口
serviceClass值是在客户端程序中的位置
3. 在程序中调用webservice接口
UserInfoWebServiceImpl userInfoWebService = (UserInfoWebServiceImpl) applicationContext.getBean("userInfoService2");
List userInfoList = userInfoWebService.findAll();