服务器端:

一、首先建立WEB.XML文件的配置映射,当访问services时,调用XFireConfigurableServlet来处理:

<?xml version="1.0" encoding="UTF-8"?>
<web-app>
 <welcome-file-list>
  <welcome-file>index.jsp</welcome-file>
 </welcome-file-list>

<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>
</web-app>

二、XFireConfigurableServlet会自动查找classes下的META-INF/xfire/services.xml配置文件,在这个XML配置文件中,把要提供服务类或接口进行绑定,设置其名称、命名空间、需要绑定的类:

<?xml version="1.0" encoding="UTF-8"?>

<beans xmlns="http://xfire.codehaus.org/config/1.0">
 <service>
  <name>MathService</name>
  <namespace>
   http://localhost:8080/TestService/MathService
  </namespace>
  <serviceClass>com.test.ws.MathService</serviceClass>
 </service>
 
 <service>
  <name>DelService</name>
  <namespace>
   http://localhost:8080/TestService/DelService
  </namespace>
  <serviceClass>com.test.ws.DelService</serviceClass>
 </service>
</beans>

三、把需要服务的类或接口编写出来,我的示例是lpl.MathService类:

package com.test.ws;

public class MathService {
 public long add(int p1, int p2) {
  return p1 + p2;
 }
}

package com.test.ws;

public class DelService {
 public long minus(int p3, int p4) {
  return p3 - p4;
 }
}

四、把XFire及其需要的包都拷过来。

下载XFire后,解压后有个lib目录,把里面全部的包都拷过来

下载的XFire包也拷过来

五、起动TOMCAT进行服务器端的测试:

输入网址:http://localhost:8080/TestService/services/

浏览器会显示你所绑定的类或接口名称,如:

Available Services:

  • MathService [wsdl]
  • DelService [wsdl]

    Generated by XFire ( http://xfire.codehaus.org )

点击服务名后面的[wsdl],会显示该服务类的详细wsdl描述。(某些浏览器或插件可能会显示失败,我用TW就不能正常访问,所以不行时,换个浏览器试试)

客户端

package other;

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 com.test.*;

public class Client {

/**
  * @param args
  */

public static void main(String[] args) {
  // TODO 自动生成方法存根

Service srvcModel = new ObjectServiceFactory().create(IMath.class);
  XFireProxyFactory factory = new XFireProxyFactory(XFireFactory.newInstance().getXFire());

String helloWorldURL = "http://localhost:8080/ServiceTest/services/Math";
  try {
   IMath srvc = (IMath) factory.create(
     srvcModel, helloWorldURL);
   System.out.print(srvc.add(1515,1515));
  } catch (MalformedURLException e) {
   e.printStackTrace();
  }

}

}

xfire webservice 实例相关推荐

  1. XFire WebService demo

    XFire创建WebService实例应用 XFire使得在JavaEE应用中发布Web服务变得轻而易举.和其他Web服务引擎相比,   XFire的配置非常简单,可以非常容易地和Spring集成. ...

  2. Flex beta2+XFire开发实例

    Flex beta2+XFire开发实例 本文主要目的是让大家对Flex beta2对WebService应用开发有个启示作用,业务实例比较单一,看完本教程你可以建立自己的WebService. 我想 ...

  3. java webservice实例教程

    原文:java webservice实例教程 源代码下载地址:http://www.zuidaima.com/share/1590350954564608.htm 最近在学习web services, ...

  4. soapui自带的webservice实例 MockService

    soapui自带的webservice实例 & MockService: http://www.docin.com/p-646423228.html 转载于:https://www.cnblo ...

  5. XFire WebService开发快速起步

    XFire WebService开发快速起步 环境: XFire-1.2.6 JDK1.5 MyEclipse 6.5 Tomcat-5.5.27 Windows XP Professional简体中 ...

  6. Java 使用Axis实现WebService实例

    在上一篇WebService实例中,基于jdk1.6以上的javax.jws 发布webservice接口.这篇博文则主要用eclipse/myeclipse 使用axis插件进行发布和调用WebSe ...

  7. java .net webservice_Java客户端调用.NET的WebService实例

    项目需要去调用.NET的WebSrevice,本身是Java,研究了半天,终于有些头绪,记下来. 1,新建.NET WebService.只在原方法上加上一个string类型的参数str [WebMe ...

  8. java xfire 客户端代码_java调用xfire webService服务客户端代码

    java技术调用xfire webService服务客户端代码 import类: import java.net.MalformedURLException; import java.net.URL; ...

  9. delphi2010 开发及调试WebService 实例

    delphi2010 开发及调试WebService 实例 基于Delphi的WebService编写 Delphi编写soap服务器与客户端程序 Delphi XE5通过WebService开发We ...

最新文章

  1. [Java] Hashcode的作用
  2. 面试:TCP协议面试10连问,总会用得到,值得收藏!
  3. 数组经典题之杨辉三角变形
  4. python metaclass应用
  5. CSS效果:固定页脚、PNG透明、最小高度 3枚
  6. 从一个故事开始谈项目与团队管理
  7. 【CCCC】L2-005 集合相似度 (25分),维护set数组去重,比较统计
  8. Java通过微信公众号获取地理位置信息
  9. MYSQL 表左连接 ON AND 和ON WHERE 的区别
  10. 「Go工具箱」一个能下载各种视频的开源工具
  11. codesys工控机_CoDeSys
  12. 老年人-傻妞机器人安装及使用教程
  13. 三菱q系列plc连接电脑步骤_三菱Q系列PLC 以太网通信设置方法
  14. MySQL查询(DQL)之基础查询+条件查询+排序查询
  15. Lync问题解决之在Lync客户端中,无法查看到聊天记录
  16. Discuz中标签及相关帖子的设置使用
  17. 经常玩电脑正确的坐姿_电脑族玩游戏正确坐姿 7要点坐不伤身
  18. 每秒处理10万订单乐视集团支付架构 – CSDN博客
  19. greenplum使用总结之常用SQL及函数
  20. 测试打呼噜的软件,打呼噜人群福音!这款app能检测鼾声并提供一站式止鼾方案...

热门文章

  1. 用户签到功能优化竞品分析
  2. 2018中国数据科学家工资究竟是多少?(最新数据)
  3. INTEL RealSense-D415 在 Ubuntu 16.04 开发流程 1
  4. 精品课程《微型计算机控制技术》电子教案ppt课件(全),《微型计算机控制技术》于海生第6章课件精品.ppt...
  5. 如何构建社区团购的核心竞争力?
  6. 《华为工作法》工作目标管理法
  7. 被判还钱5亿多 乐视移动年底被催账年关难过
  8. 模式识别(十四)最小误判概率准则判决
  9. 安卓webrtc在ubuntu 2004下编译使用
  10. wordcloud 用法及名著词云统计