XFire的webservice应用
来源:互联网 发布:绘制贴图的软件 编辑:程序博客网 时间:2024/04/30 14:13
XFire是很流行的webService框架和其他Web服务引擎相比,XFire的配置非常简单,可以非常容易地和Spring集成。
XFire是codeHaus组织提供的一个开源框架,它构建了POJO和SOA之间的桥梁,主要特性就是支持将POJO通过非常简单的方式发布成Web服务,这种处理方式不仅充分发挥了POJO的作用,简化了Java应用转化为Web服务的步骤和过程,也直接降低了SOA的实现难度,为企业转向SOA架构提供了一种简单可行的方式。
开始建立一个简单的web服务端项目。
1、新建web项目,下载xfire-distribution-1.2.6.zip,百度搜索即可,官网也行。把jar包都导入web项目。
建立User类,
package shjh.xfire.domain;import java.util.Date;public class User { private Long userId; private String accountId; private String userName; private Date lastLogin; public Long getUserId() { return userId; } public void setUserId(Long userId) { this.userId = userId; } public String getAccountId() { return accountId; } public void setAccountId(String accountId) { this.accountId = accountId; } public String getUserName() { return userName; } public void setUserName(String userName) { this.userName = userName; } public Date getLastLogin() { return lastLogin; } public void setLastLogin(Date lastLogin) { this.lastLogin = lastLogin; }}
UserService类,用作对外接口
package shjh.xfire.service;import shjh.xfire.domain.User;public interface UserService { public User queryUserByAccoutId(String accountId); public void createUser(User user);}
建立UserServiceImpl类,是接口实现类,对外透明。
package shjh.xfire.service.impl;import java.util.Date;import org.apache.commons.logging.Log;import org.apache.commons.logging.LogFactory;import shjh.xfire.domain.User;import shjh.xfire.service.UserService;public class UserServiceImpl implements UserService { private static final Log log = LogFactory.getLog(UserServiceImpl.class); @Override public User queryUserByAccoutId(String accountId) { log.info("accountId=" + accountId); User user = new User(); user.setAccountId(accountId); user.setLastLogin(new Date()); user.setUserId(new Long(123L)); user.setUserName("用户名"); return user; } @Override public void createUser(User user) { log.debug("createUser user=" + user); System.out.println("createUser " + user.getAccountId()); }}
编写一个services.xml文件,默认的路径就是这个,不然会报错文件找不到。
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://xfire.codehaus.org/config/1.0"><service> <name>UserService</name> <serviceClass>shjh.xfire.service.UserService</serviceClass> <implementationClass>shjh.xfire.service.impl.UserServiceImpl</implementationClass></service></beans>
web.xml中配置org.codehaus.xfire.transport.http.XFireConfigurableServlet,框架提供的servlet
<servlet> <servlet-name>XFireServlet</servlet-name> <servlet-class>org.codehaus.xfire.transport.http.XFireConfigurableServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>XFireServlet</servlet-name> <url-pattern>/services/*</url-pattern> </servlet-mapping>
2、tomcat中启动项目,浏览器http://localhost:8080/xfire/services/UserService?wsdl
,就能看到wsdl文件了,说明发布成功。
3、建立客户端Java项目。
建立和server端一样的接口UserService,
建立调用测试类Main,
package cfireClient.test;import java.net.MalformedURLException;import org.codehaus.xfire.client.XFireProxyFactory;import org.codehaus.xfire.service.Service;import org.codehaus.xfire.service.binding.ObjectServiceFactory;import shjh.xfire.domain.User;import shjh.xfire.service.UserService;public class Main { public static void main(String[] args) { String serviceUrl = "http://localhost:8080/xfire/services/UserService"; Service serviceModel = new ObjectServiceFactory().create(UserService.class); try { UserService userService = (UserService) new XFireProxyFactory().create(serviceModel, serviceUrl); User user = new User(); user.setAccountId("1341"); userService.createUser(user); User query = userService.queryUserByAccoutId("1341"); System.out.println(query.getAccountId() + " --> " + query.getUserName()); } catch (MalformedURLException e) { e.printStackTrace(); } }}
运行main方法就可以了。
0 0
- XFire的webservice应用
- XFire创建WebService实例应用
- 应用XFire开发WebService实例 xfire+myeclipse+weblogic 8
- 基于xFire的webService例子
- 使用Xfire构建Java WebService应用
- 用Xfire发布Webservice应用(转载)
- xfire webservice
- Xfire WebService
- webservice----xfire
- webservice(XFire)
- xfire webservice
- 用XFire轻松的开发WebService
- 使用xfire创建webservice的一般过程
- xfire实现webservice时的权限控制
- spring下的webservice之xfire
- 利用xfire编写webservice的例子
- java(xfire)调用java编写的webservice
- WebService的 HelloWorld : XFire , JAX-WS , JSR181
- 不用VS自带的打包工具,不用InstallShield。用C#自己制作安装程序
- 别让惰性控制你
- 多字段搜索 (一) - 多个及单个查询字符串
- Android AccessibilityService 应用之微信抢红包外挂
- Zend Studio配置
- XFire的webservice应用
- LeetCode227. Basic Calculator II
- 乘法口诀表
- iOS之Reachability和AFN判断网络连接状态
- 一些前端设计相关网站收集
- 智能卡数据传输T=1传输协议
- system/build.prop各行代码解释
- linux修改ethx
- 获取Android屏幕尺寸、控件尺寸、状态栏/通知栏高度、导航栏高度