xfire_webService
用xfre创建webService很简单了 1.把需要的jar包复制到web项目的lib里 ? ??activation-1.1.jar ? ??commons-codec-1.3.jar ? ??commons-httpclient-3.0.jar ? ??commons-logging-1.1.1.jar ? ??jaxen-1.1-beta-9.jar ? ??jdom-1.0.jar ? ??log4j-1.2.15.jar ? ??mail-1.4.jar ? ??spring-1.2.6.jar ? ??stax-api-1.0.1.jar ? ??wsdl4j-1.6.1.jar ? ??wstx-asl-3.2.0.jar ? ??xbean-2.2.0.jar ? ??xbean-spring-2.8.jar ? ??xfire-all-1.2.6.jar ? ??xml-apis-1.0.b2.jar ? ??xmlParserAPIs-2.0.2.jar ? ??XmlSchema-1.1.jar 2.在web.xml里添加如下配置 <servlet> <servlet-name>XFireServlet</servlet-name> <servlet-class>org.codehaus.xfire.transport.http.XFireConfigurableServlet</servlet-class> <load-on-startup>0</load-on-startup> </servlet> <servlet-mapping> <servlet-name>XFireServlet</servlet-name> <url-pattern>/services/*</url-pattern> </servlet-mapping>3.写个服务接口Server.java package com.dahafo.webService; /** * @author Zevi Qian E-mail:gosun@foxmail.com * @version 创建时间:2013-5-9 下午11:09:28 * 服务接口 */ public interface Server { public String say(String name); public User getUser(User u); }? ? ? ? ? 实现接口?HelloServer.java package com.dahafo.webService; /** * @author Zevi Qian E-mail:gosun@foxmail.com * @version 创建时间:2013-5-9 下午11:12:06 * helloserverimpl */ public class HelloServer implements Server { /* (non-Javadoc) * @see com.dahafo.webService.Server#say(java.lang.String) */ @Override public String say(String name) { System.out.println("say方法被调用"); return "你好,"+name+"!欢迎使用webService"; } /* (non-Javadoc) * @see com.dahafo.webService.Server#getUser(com.dahafo.webService.User) */ @Override public User getUser(User u) { u.setId("new:"+u.getId()); u.setName("new:"+u.getName()); return u; } }? User.java类 package com.dahafo.webService; /** * @author Zevi Qian E-mail:gosun@foxmail.com * @version 创建时间:2013-5-10 上午12:15:25 * 用户 */ public class User { private String id; private String name; public User() { } public String getId() { return id; } public void setId(String id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } } 4.发布服务 ? ? 在src下创建META-INF ,在META-INF下创建xfire ,在xfire下创建services.xml ?内容如下 ? <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://xfire.codehaus.org/config/1.0"> <service> <name>service</name> <serviceClass>com.dahafo.webService.Server</serviceClass> <implementationClass>com.dahafo.webService.HelloServer</implementationClass> </service> </beans> 文件结构如下图?
5.把web项目部署到tomcat上 写个测试类测下 ?? package com.dahafo.webService; import java.net.MalformedURLException; 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 sun.rmi.runtime.Log; /** * @author Zevi Qian E-mail:gosun@foxmail.com * @version 创建时间:2013-5-9 下午11:27:45 * 类说明 */ public class TestService { /** * @param args */ public static void main(String[] args) { Service serviceModel = new ObjectServiceFactory().create(Server.class); XFireProxyFactory factory = new XFireProxyFactory(XFireFactory.newInstance().getXFire()); String url ="http://localhost:8080/xfire_webService/services/service"; try { Server s= (Server)factory.create(serviceModel,url); System.out.println(s.say("zevi")); User u=new User(); u.setName("小米"); User newu=s.getUser(u); System.out.println("new id:"+newu.getId()+";new name:"+newu.getName()); } catch (MalformedURLException e) { e.printStackTrace(); }; } }我的项目名称是xfire_webService,所以url就是http://localhost:8080/xfire_webService/services/service (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- nodejs分页设计配合bootstrap-paginator
- CXF之"@XmlType.name 和 @XmlType.namespace 为类分配不
- angularjs – Angular Stripe – 将条带支付表格转换为条纹
- 【数据结构】记忆干货
- Rename Filenames Wirth Full Angular-Chinese
- anglejs – 角度ng重复表达式作为变量
- angular – ngrx – createSelector vs Observable.combine
- BootStrap3.0学习--JavaScript 插件
- 带有$和字符串插值的Scala Regex
- 问题样式:Angular 2中的主机