`
pingwei000
  • 浏览: 60952 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

XFire的Web Servicep客户端快速配置

阅读更多

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

下载的XFire包,及其解压后,lib目录下全部的包都拷过来

在项目的根目录下建立一个ant文件(BUILD.XML),必须指出lib目录所在的路逗头 衿鞫说膚sdl路径:

<project name="struts-hibernate-eg" basedir="." default="help">

     <path id="build.classpath">
         <fileset file="lib/*.jar" />
     </path>

<!-- Help -->
<target name="help">
   <echo message="BASEDIR:${basedir}"/>
   <echo message="targer: help"/>
   <echo message="usage: ant "/>
</target>

<!-- Wsgen -->
     <target name="Wsgen">
      <taskdef name="wsgen" classname="org.codehaus.xfire.gen.WsGenTask" classpathref="build.classpath" />
      <wsgen outputDirectory="bin" wsdl="http://192.168.0.16:8080/MathService/services/MathService?wsdl" package="client" />
     </target>

</project>

二、运行通过ant运行这个文件,即通过服务器的wsdl类热核,生成客户端所需要的类

其中MathServiceClient.java和MathServicePortType.java,这两个类是最重要的,其他的可要可不要

三、编写自己的类,调用客户端类,即可以远程访问Web Service,并调用其对应的类

public class TestClient {

public static void main(String[] args) {

   MathServiceClient msc=new MathServiceClient();
   MathServicePortType msp=msc.getMathServiceHttpPort();
   System.out.println(msp.add(100, 200));
   System.out.println(msp.sub(100, 200));
}

}

更复杂的生成web service客户端调用文件的例子:

      xfire提供了两种生成客户端测试的方式,一种提供了ant脚本,另一种是提供了xfire的eclipse插件;本文介绍了使用ant脚本的方式生成客户端的方式。

    首先在项目XFireProject中增加一个build.xml文件。xfire提供了一个ant任务:
<taskdef name="wsgen" classname="org.codehaus.xfire.gen.WsGenTask" classpathref="myclasspath" />


build.xml文件的内容如下:

<?xml version="1.0"?>
<project name="XFireProject" default="genfiles" basedir=".">
    <property name="lib" value="lib" />
    <path id="myclasspath">
        <fileset dir="${lib}">
            <include name="*.jar" /> 
        </fileset> 
        <pathelement location="${genfiles}" />
    </path>
    <!--通过XFire ant任务生成客户端代码的存放位置-->
    <property name="code_path" value="src.client" /> 
    <!--需要生成客户端代码的wsdl文件-->
    <property name="wsdl_path" value="http://localhost:8080/xfire/services/HelloService?wsdl" />
    <!--生成客户端代码的包名-->
    <property name="code_package" value="com.liuxiang.xfire.client" />
   
    <!-- Remove classes directory for clean build -->
    <target name="clean" description="Prepare for clean build"> 
        <delete dir="${code_path}"/>
        <mkdir dir="${code_path}"/>
    </target>
   
    <!--<target name="genfiles" depends="clean" description="Generate the files">  -->
    <target name="genfiles" description="Generate the files">
        <taskdef name="wsgen" classname="org.codehaus.xfire.gen.WsGenTask" classpathref="myclasspath" />
        <!--outputDirectory属性定义创建的代码所在的文件夹
             wsdl是web服务的wsdl文件
             package代表创建的代码的package
        -->
        <wsgen outputDirectory="${code_path}" wsdl="${wsdl_path}" package="${code_package}" binding="xmlbeans" /> 
    </target>
</project>
执行ant脚本,将会生成客户端代码,共三个文件。会放在包com.liuxiang.xfire.client下面,文件分别是:

HelloServiceClient.java、HelloServiceImpl.java、HelloServicePortType.java

编写测试代码,通过调用5中生成的代码,编写TestClient.java文件。文件内容如下:

/** *//**
*
*/
package com.liuxiang.xfire;

import java.net.MalformedURLException;

import org.codehaus.xfire.XFire;
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.liuxiang.xfire.client.HelloServiceClient;
import com.liuxiang.xfire.client.HelloServicePortType;

/** *//**
* 通过XFire生成的客户端进行调用
*
* TestClient.java
* com.liuxiang.xfire
* XFireProject
* @author liuxiang mailto:juxtapose@163.com
* 2007-9-9 下午06:54:36
*
*/
public class TestClient ...{
    /** *//**
      * 客户端测试
      * 通过ant脚本生成的客户端进行调用
      *
      * @param name     传入的参数,客户名字
      * @return     返回sayHello()的返回值
     */
    public static String testClient(String name)...{
         HelloServiceClient helloSC = new HelloServiceClient();
         HelloServicePortType helloSP = helloSC.getHelloServiceHttpPort();
         String result = helloSP.sayHello(name);
        return result;
     }

    /** *//**
      * @param args
      * @throws Exception
     */
    public static void main(String[] args) throws Exception ...{
         System.out.println(testClient("Liuxiang"));
     }

}



分享到:
评论

相关推荐

    Web服务中XFire的配置和在客户端的配置,图解说明

    Web服务中XFire的配置和在客户端的配置,图解说明Web服务中XFire的配置和在客户端的配置,图解说明Web服务中XFire的配置和在客户端的配置,图解说明Web服务中XFire的配置和在客户端的配置,图解说明Web服务中XFire的...

    XFire Java Web Service 客户端

    这些资源可以帮助开发者快速理解和使用XFire客户端,进行Web服务的调用。 总结,XFire作为一款强大的Java Web Service客户端框架,通过简洁的API和丰富的功能,为开发者提供了构建Web服务客户端的便利。尽管现在有...

    xfire根据WSDL生成客户端代码

    本文将详细介绍如何使用XFire根据WSDL文件生成客户端代码,以便快速地与Web服务进行交互。 首先,我们需要了解WSDL文件的结构。一个WSDL文件通常包含以下关键元素: 1. **服务(Service)**:定义服务的位置,即...

    spring2.5+xfire1.2.6 客户端和服务端的配置

    标题 "spring2.5+xfire1.2.6 客户端和服务端的配置" 涉及的是一个早期的Web服务集成方案,其中Spring 2.5是一个流行的Java应用框架,而Xfire 1.2.6则是一个用于构建和消费Web服务的库。在那个时代,Xfire是Spring...

    xfire访问webservice客户端用到的jar包

    XFire的核心特性在于其轻量级、高性能和易于使用的API,使得开发者可以快速地实现Web服务功能。 2. **使用XFire访问Web服务** 要使用XFire访问Web服务,首先需要添加相关的jar包到项目类路径。在提供的压缩包...

    调用xfire接口的客户端实现

    总的来说,调用XFire接口的客户端实现主要涉及到对Web服务原理的理解、正确配置项目依赖、生成和使用客户端代理类,以及处理异常和测试。对于新手来说,理解这些步骤将有助于构建一个能有效通信的Web服务客户端。...

    xfire创建服务端客户端源码

    总的来说,Xfire提供了一个简单、高效的远程调用解决方案,尤其适合需要快速搭建服务端和客户端通信的应用场景。通过学习和实践Xfire的源码,开发者不仅可以掌握XML-RPC的基本原理,还能提升在分布式系统中的编程...

    用xfire的Eclipse_Plugin生成web服务的客户端.

    XFire是一个开源的、轻量级的Web服务框架,它支持SOAP、REST等多种协议,能够帮助开发者快速构建、部署和测试Web服务。而Eclipse则是一款广受欢迎的开源集成开发环境(IDE),适用于Java、C/C++、PHP等多种编程语言,...

    xfire+webService 客户端和服务器端的例子

    xfire+webService 客户端和服务器端的例子 xfire-distribution-1.2.6.zip 是xfire的包,网上可以下载的,本人已经下载完毕。 另附两个xfire的配制文档,供大家参考。 XFire-WebService.pdf Xfire WebService...

    Xfire客户端调用webservice jar包

    在这个场景下,"Xfire客户端调用webservice jar包"是指Xfire客户端为了实现某些功能,如获取服务器数据或更新信息,需要调用Web服务的接口。这些接口通常以Java的jar包形式提供,方便开发者集成到他们的应用中。 ...

    xfire客户端生成

    总结,XFire客户端生成是Java开发Web服务客户端的一种高效方式,通过自动化的代码生成,开发者可以快速地接入并调用Web服务,大大减少了手动编写客户端代码的工作量。在实际开发中,结合Spring等框架,可以构建出...

    xfire客户端包含所需要的jar

    通常,这样的文件会帮助开发者了解如何初始化XFire客户端,如何配置服务代理,以及如何发送和处理Web服务请求。 使用XFire客户端的基本步骤包括: 1. 引入必要的jar文件到项目类路径。 2. 创建服务代理,这通常可以...

    webservice四种发布方式及客户端调用

    - 该文件位于 WEB-INF/META-INF/xfire/services.xml,用于配置服务信息。 5. **发布服务:** - 部署应用到服务器并验证服务是否可用。 #### Axis2 方式 Axis2 是 Apache 基金会提供的另一个流行的 Web 服务...

    XFire-WebServices傻瓜配置.doc

    XFire-WebServices的配置过程相对简单,主要涉及接口定义、服务实现、服务配置和客户端调用。通过这种方式,开发者可以快速地构建和测试Web服务。同时,它还支持对远程Web服务的调用,使得集成第三方服务变得容易。...

    xfire 服务端和客户端源码完整工程

    《Xfire服务端与客户端源码详解》 Xfire是一款历史悠久的即时通讯软件,主要用于游戏社区,它允许玩家在游戏内外进行交流、组队和跟踪朋友的状态。本篇将深入探讨Xfire的服务端和客户端源码,帮助读者理解其工作...

    Webservice使用xfire发布及客户端调用

    在本主题中,我们将探讨如何使用XFire框架来发布Web服务以及客户端如何调用这些服务。 XFire是一个高性能、轻量级的Java Web服务框架,它提供了简单而强大的API来创建和消费Web服务。在早期的Java Web服务开发中,...

    spring xfire 客户端实例

    Spring XFire 是一个基于Spring框架的SOAP Web服务客户端和服务器实现,它允许开发者轻松地创建和消费Web服务。本文将详细介绍Spring XFire客户端的实例应用,以及如何利用它来实现Web服务的调用。 首先,我们需要...

    webservice xfire 客户端调用实现

    这些文件可以帮助开发者快速地搭建和测试XFire客户端,以便于与Web服务进行交互。 总的来说,XFire提供了一种简洁、高效的方式来实现Web服务的客户端调用,特别是其对对象传递的支持,使得开发者能够更加专注于业务...

    Xfire的client.zip_Xfire客户端代码_webservice

    2. **配置文件**:客户端代码可能包含XML配置文件,用于存储Web服务的URL、认证信息、端口等参数,便于配置和管理。 3. **HTTP/HTTPS通信模块**:由于Web服务通常基于HTTP或HTTPS协议,因此客户端代码需要有相应的...

    xfire客户端eclipse插件

    在实际开发中,结合XFire客户端Eclipse插件,开发者可以快速构建和部署Web服务,同时利用Eclipse的强大功能进行代码管理和团队协作。这对于提升开发效率、减少错误以及实现快速迭代具有重要意义。虽然XFire已被更...

Global site tag (gtag.js) - Google Analytics