服务器端
1.新建web工程
2.导入xfire的jar包:工程----->右键------>myEclipse----->add xFire----->next------>加入核心包core
3.在WebServices--->services.xml中配置
< service > < name > leiweiService </ name > < namespace > www.yinhe.edu.com/leiweiService </ namespace > < serviceClass > com.china.bank.TurnMoneyBank </ serviceClass > < implementationClass > com.china.bank.ChinaBank </ implementationClass > </ service >
4.编写接口和实现类
5.测试服务器是否部署成功:工程名+servlet的URL地址
http://192.168.1.45:8080/webserviceServer/services/*?wsdl
客户端1:提供jar包
1.新建web工程
2.导入xfire的jar包:工程----->右键------>myEclipse----->add xFire----->next------>加入核心包core和http client包
3.得到服务器端提供的接口jar包并导入工程
4.新建servlet
5.在servlet中书写核心代码
Service servicemodel = new ObjectServiceFactory().create(TurnMoneyBank.class);// 通过客户端的接口来得到一个服务 XFire factory = XFireFactory.newInstance().getXFire();// 通过工厂得到XFire对象 XFireProxyFactory proxy = new XFireProxyFactory(factory);// 通过xfire对象实例化代理工厂 String serverurl = "http://172.18.27.146:8080/webserviceServer/services/leiweiService";//访问服务器上的方法地址 TurnMoneyBank turnMoneyBank = null; turnMoneyBank = (TurnMoneyBank) proxy.create(servicemodel,serverurl);//请求到对应地址的服务器 String msg = turnMoneyBank.turnMoney(myCount,targetCount,money);//调用服务器端接口中的方法
6.部署发布:工程名+servlet的URL地址
客户端2:只提供地址
import java.net.MalformedURLException; import java.net.URL; import org.codehaus.xfire.client.Client; public class url { /** * xfire-all-1.2.4.jar,jdom-1.0.jar * @param args */ public static void main(String[] args) { try { Client c = new Client(new URL("http://172.18.27.146:8080/wservice/services/helloservice?wsdl")); //调用Client对象的invoke方法,指定web服务的方法名,和参数,返回值是一个Object型的数组。 //下面代码调用getName方法,这个方法没有参数用所以后一个参数使用new Object[0]。 Object[] results = c.invoke("getName",new Object[0]); //调用Client对象的invoke方法,指定web服务的方法名,和参数,返回值是一个Object型的数组。 //下面代码调用getAge方法,这个方法有参数用所以后一个参数使用new Object[]{params}。 String param = "leiwei"; int param2 = 300; Object[] results2 = c.invoke("getAge",new Object[]{param,param2}); System.out.println(results[0].toString() + "---" + results2[0].toString()); } catch (MalformedURLException e) { e.printstacktrace(); } catch (Exception e) { e.printstacktrace(); } } }
1.新建web/java工程
2.导入xfire的jar包:工程----->右键------>myEclipse----->add xFire----->next------>加入核心包core和http client包
3.
4.
5.
6.
7.修改helloserviceClient中main方法。即在其中调用想要的接口方法
http://www.cnblogs.com/sun_moon_earth/archive/2009/02/03/1383308.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。