【转】xfire-在客户端调用WebServices
原地址:http://cnjava.blog.51cto.com/1208887/335097
在上一篇文章Java WebServices教程(1)-使用XFire当中我们介绍了xfire建立服务器端。
接下来我们在客户端调用这个web服务。
首先我们也应该有一个和服务端完全一致的接口,包名也应该一致!
1 public interface IHelloService { 2 3 public List<User> getAllUser(); 4 public String sayHi(String uname); 5 }
然后再客户端使用如下的代码就可以调用了。
1 package com.pengzj.service.invoke; 2 3 import java.util.List; 4 5 import org.codehaus.xfire.XFireFactory; 6 import org.codehaus.xfire.client.XFireProxyFactory; 7 8 Technorati 标签: java,webservices,xfire,j2ee 9 10 11 import org.codehaus.xfire.service.Service; 12 import org.codehaus.xfire.service.binding.ObjectServiceFactory; 13 14 import com.pengzj.service.IHelloService; 15 import com.pengzj.service.User; 16 17 public class ClientTest { 18 19 /** 20 * @param args 21 * @author pengzj 22 *@date Jun 17, 2010 23 */ 24 public static void main(String[] args) { 25 Service servicemodel =new ObjectServiceFactory().create(IHelloService.class); 26 XFireProxyFactory factory =new XFireProxyFactory(XFireFactory.newInstance().getXFire()); 27 String serviceUrl="http://localhost:8080/cxfService_0617/services/Hellows"; 28 try{ 29 IHelloService hellows =(IHelloService)factory.create(servicemodel,serviceUrl); 30 System.out.println(hellows.sayHi("jack")); 31 32 }catch (Exception e) { 33 e.printStackTrace(); 34 } 35 } 36 37 }