接下来我们在客户端调用这个web服务。
首先我们也应该有一个和服务端完全一致的接口,包名也应该一致!
public interface IHelloService {
public List<User> getAllUser();
public String sayHi(String uname);
}
然后再客户端使用如下的代码就可以调用了。
package com.pengzj.service.invoke;
import java.util.List;
import org.codehaus.xfire.XFireFactory;
import org.codehaus.xfire.client.XFireProxyFactory;
import org.codehaus.xfire.service.Service;
import org.codehaus.xfire.service.binding.ObjectServiceFactory;
import com.pengzj.service.IHelloService;
import com.pengzj.service.User;
public class ClientTest {
/**
* @param args
* @author pengzj
*@date Jun 17, 2010
*/
public static void main(String[] args) {
Service servicemodel =new ObjectServiceFactory().create(IHelloService.class);
XFireProxyFactory factory =new XFireProxyFactory(XFireFactory.newInstance().getXFire());
String serviceUrl="http://localhost:8080/cxfService_0617/services/Hellows";
try{
IHelloService hellows =(IHelloService)factory.create(servicemodel,serviceUrl);
System.out.println(hellows.sayHi("jack"));
}catch (Exception e) {
e.printStackTrace();
}
}
}