`

一个 XFire 初级入门例子

阅读更多

  在写简单例子之前,我们要做好如下准备:

到网上下载xfire-1.2.6.zip包. 然后解压之后,xfire-1.2.6\lib  目录下的所有.jar 文件和 xfire-1.2.6目录下的xfire-all-1.2.6.jar文件,都拷贝到项目中的WEB-INF目录中的lib目录中,

 

之后,我们开始创建项目XFire_Projects,我们就可以开始在项目中建立包, 在包中创建一个IHelloWorld 接口,

随便写两个简单的方法,

 

在写一个实现类,这个实现类不需要implements IHelloWorld接口,

只需,把IHelloWorld的方法,重写一遍就行了.

 

接口代码如下:

package pack.java.demo;

/**
 * 接口;
 * @author ZhouHaiTao.
 *
 */
public interface IHelloWorld {
	
	public String hello(String name);
	
	public int add(int i,int j);
}

 

实现类代码如下:

package pack.java.demo;

/***
 * 该实现类可以不需要implements IHello接口;
 * @author ZhouHaiTao
 *
 */
public class Hello {
	public String hello(String name){
		return name+",Hello World";
	}
	
	public int add(int i,int j){
		return i+j;
	}
}

 

 

之后,编写完接口和实现类之后,我们在SRC目录下,建立META-INF 文件, META-INF文件夹中在建立,xfire文件夹,之后,在建立services.xml文件,

 

services.xml文件内容如下:

<!--Start SNIPPET:services-->
<beans>
	<service xmlns="http://xfire.codehaus.org/config/1.0">
		<!-- 服务名称 -->
		<name>HelloWorld_FristXFire</name>
		<!-- 实现类的命名空间 -->
		<namespace>http://pack.java.demo/Hello</namespace>
		<!-- 实现类所指的包和类 -->
		<serviceClass>pack.java.demo.Hello</serviceClass>
		<!-- 对应接口的实现 -->
		<implementationClass>pack.java.demo.Hello</implementationClass>
		<scope>request</scope>
	</service>
</beans>

 

 

web.xml配置如下:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
  <display-name>WebServiceDemo</display-name>

	<servlet>
		<servlet-name>Xfile</servlet-name>
		<servlet-class>org.codehaus.xfire.transport.http.XFireConfigurableServlet</servlet-class>
		<load-on-startup>0</load-on-startup>
	</servlet>

	<servlet-mapping>
		<servlet-name>Xfile</servlet-name>
		<url-pattern>/servlet/XFireServlet/*</url-pattern>
	</servlet-mapping>

	<servlet-mapping>
		<servlet-name>Xfile</servlet-name>
		<url-pattern>/service/*</url-pattern>
	</servlet-mapping>
	
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
  </welcome-file-list>
</web-app>

 

 

然后我们启动部署项目,启动tomcat服务, 在浏览器中输入:

http://localhost:9999/XFire_Projects/services/

我们在浏览器中将会看到.以下内容代表部署成功.

Available Services:

  • HelloWorld_FristXFire [wsdl]
  • <!--Just filling space according to http://support.microsoft.com/default.aspx?scid=kb;en-us;Q294807--><!--Just filling space according to http://support.microsoft.com/default.aspx?scid=kb;en-us;Q294807-->
    Generated by XFire ( http://xfire.codehaus.org )

这个HelloWorld_FristXFire就是我们在services.xml中配置的服务名称,

 

最后,我们可以新建client 项目了,.同样的把所有的.jar拷贝到客户端项目中WEB-INF/lib中.

 

建立项目名称:XFire_Projects_Client,

接下来在src创建pack.java.demo.client.

之后,在包中创建一个与服务端对应的一个IHelloWorld接口,注意要与服务器接口里面的方法一摸一样,.

 

然后,在随便写一个测试类,

代码如下:

package pack.java.demo.client;


import java.net.MalformedURLException;

import org.codehaus.xfire.client.XFireProxyFactory;
import org.codehaus.xfire.service.Service;
import org.codehaus.xfire.service.binding.ObjectServiceFactory;

/***
 * XFire 客户端测试;
 * @author ZhouHaiTao.
 *
 */
public class XFireClientDemo {

	/**
	 * 测试主方法;
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		String url="http://localhost:9999/XFire_Projects/services/HelloWorld_FristXFire";
		Service serviceModel=new ObjectServiceFactory().create(IHelloWorld.class);
		try {
			IHelloWorld service=(IHelloWorld)new XFireProxyFactory().create(serviceModel, url);
			int resultInt=service.add(5, 5);
			System.out.println(resultInt+"\n");
			String resultString=service.hello("彭小婷");
			System.out.println(resultString);
		} catch (MalformedURLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
}

 

 

点击运行,

控制台将会显示:

 

10

彭小婷,Hello World

 

 

分享到:
评论

相关推荐

    XFire完整入门教程

    XFire完整入门教程XFire完整入门教程XFire完整入门教程XFire完整入门教程

    xfire入门实例操作

    **Xfire入门实例操作详解** Xfire是一款曾经非常流行的在线游戏社区软件,它允许玩家在游戏中与朋友聊天、查看他们的状态、记录游戏统计等。虽然现在可能不再是最主流的游戏社交工具,但对于想要了解游戏社区历史...

    XFire建立Webservice实例,入门级别,适合初学者

    【XFire建立Webservice实例详解】对于初学者来说,理解并构建一个Web Service是一个重要的学习步骤,而XFire作为一款曾经流行的开源框架,提供了一种简单的方法来创建和部署Web Service。本文将详细介绍如何利用...

    XFire--Webservice入门xfire

    XFire--Webservice入门xfire

    webService-xfire入门doc

    【描述】"webService-xfire入门" 提示我们这是一个初学者指南,旨在帮助用户理解如何开始使用XFire来创建和使用Web服务。这通常包括安装步骤、基本概念解释、配置教程以及一些简单的示例项目。 【标签】"webService...

    xFire初级中文教程

    xFire是一个开源的Java Web服务框架,它被设计用于简化Web服务的发布和调用过程。相较于其他复杂的Web服务框架如Axis,xFire提供了更为简洁的操作方式和更加灵活的配置选项。本书适合初学者以及希望快速掌握如何使用...

    xfire的简单实例

    本实例将深入探讨如何使用xfire创建一个简单的“Hello World”Web服务。 【描述】:“有关WebService的概念、原理、数据发现、描述、绑定等过程、方式也不说了” Web服务是一种基于互联网的软件交互方式,通过标准...

    xfire构建WebService例子

    XFire是一个早期流行的Java框架,用于构建高质量、高性能的Web服务。本教程将详细讲解如何使用XFire来创建和消费一个简单的WebService。 首先,我们需要理解什么是XFire。XFire(现已被Apache CXF项目吸收)是一个...

    xfire实现web service入门实例

    Web服务是一种基于网络...这个"HelloWorld"实例就是一个很好的起点,它展示了如何从头开始创建一个简单的Web服务。随着对Xfire的深入理解和实践,你可以处理更复杂的服务,包括数据绑定、安全性和事务管理等高级特性。

    Xfire Webservice的例子

    Xfire Webservice是一个基于Java平台的服务框架,它允许开发者创建和使用Web服务。这个框架的主要目的是简化Web服务的开发过程,使开发人员可以快速地构建分布式应用程序。在本例中,我们将探讨Xfire Webservice与...

    手把手xfire开发WS入门实例

    总结来说,"手把手xfire开发WS入门实例"涉及到的知识点涵盖了Web Service的基本概念、核心协议(SOAP和WSDL)、选择Web Service通信方式的比较、开发工具和框架(XFire和Axis),以及相关技术与SOA架构。通过学习...

    xfire实现webservice实例

    XFire是Java平台上一个曾经流行的开源框架,专门用于构建和消费Web服务。本实例将深入探讨如何利用XFire来实现Web服务。 一、XFire简介 XFire是Apache CXF项目的前身,它提供了一个轻量级、高性能的框架,用于创建...

    XFire 实现web service入门实例源码

    本教程将深入探讨如何使用XFire来实现一个基础的Web服务入门实例,并通过源码分析来增进理解。 首先,我们要明白Web服务的基本概念。Web服务基于开放标准,如SOAP(Simple Object Access Protocol)、WSDL(Web ...

    WebService&SOA&ESB入门介绍(手把手xfire开发WS入门实例).ppt

    WebService&SOA&ESB入门介绍(手把手xfire开发WS入门实例)

    WebService&SOA&ESB入门介绍(手把手xfire开发WS入门实例)

    它基于XML,提供了一个可扩展的消息处理框架,可以跨越多种底层协议进行通信。SOAP最初由Microsoft和Userland Software提出,并由W3C发展为规范。SOAP 1.1仅支持HTTP POST,而SOAP 1.2增加了对HTTP GET的支持。SOAP...

    用xfire开发webservice实例(原稿)

    这个资源是一个关于使用XFire框架创建Web服务的实际示例项目。XFire是早期流行的一个用于构建SOAP Web服务的Java库,它提供了轻量级且高效的解决方案。由于描述中提到“不包含xfire相关jar包”,这意味着用户在运行...

    xfire+spring+webservice入门例子

    这个入门实例旨在帮助初学者快速理解如何在Spring环境中利用XFire开发和消费Web服务。实践中,你可能还需要了解WS-Security、WS-Policy等高级特性,以及如何处理复杂的数据类型和异常。不断学习和实践,才能更好地...

Global site tag (gtag.js) - Google Analytics