`
bdk82924
  • 浏览: 564957 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

MyEclipse 开发XFire实例

阅读更多

实例的原BLOG网站地址为:http://blog.csdn.net/meteorlWJ/archive/2009/09/12/4545100.aspx,有兴趣的朋友多多支持
在开始前,先介绍一些概念:

     XFire Java SOAP框架概述 (摘自:http://tech.it168.com/j/e/2006-10-28/200610281432707.shtml)
    MyEclipse Web Services是建立在XFire JavaSOAP框架和工具基础上的, XFire是一款开源的JavaSOAP框架。它拥有一个轻量级的信息处理模块,通过STAX来与SOAP信息相结合。提供了一个工作在WebServices下的简单API,支持POJO和schema开发. XFire支持 Web Services standards,Spring整合, 支持JBI , 支持 JAXB ,XMLBeans,Java 5 和JAX-WS.并支持HTTP, JMS, XMPP,In-memory传输协议

一、环境配置:MyEclipse7.0
                     JDK1.6
二、创建Web Service Project
      1)在MyEclipse中选择File—>New—>Other,选择Web Service Project
             

2)Project Name:WebServiceServer,Framework:XFire,其他选项默认
      


     3)Next,这一步保持默认值
     4)Project Library选择,选择XFire 1.2  Core Libraries
     
    5)Finish,创建成功后看到的工程目录如下:
   


    6)完成以上5步后,查看WebRoot/WEB-INF/web.xml
         这里指明了当遇到/services/*请求时,将选用XFireConfigurableServlet来处理   

三、创建Web Service Code
    1)通过File—>New—>Other—>Web Services—>Web Service wizard创建JAVA CODE
     


     2)选择通过JAVA CLASS创建Web Service
     


     3)创建HelloWebService.java,通过New创建com.service package,向导将为工程自动创建对应的接口类与实现类
     

 

 


     创建成功后查看WebServices/services.xml,发现配置文件多了以下内容:
     


    4)修改HelloWebServiceImpl.java
    package com.service;
    //Generated by meteorWJ

   public class HelloWebServiceImpl implements IHelloWebService {
   
     public String example(String message) {
        return getAuthor()+","+message;
     }
     private String getAuthor(){
        return "meteorWJ";
     }
   
   }

四、部署并测试WebSericeServer
    1)部署WebServiceServer
   
    在部署向导中选择项目、服务器
   
    2)启动服务器
   
   3)测试WebService
   MyEclipse提供了一个Web Service Explorer来测试Web Service
   


   选择列表中的Launch SOAP Web Services Explorer
   4)选择WSDL模式
   
   5)在Explorer中选择WSDL Main,在右边的URL中输入
   http://locahost:9090/WebServiceServer/services/HelloWebService?WSDL,单击"Go"
   其中9090是服务器端口号,services在之前的web.xml中指定
   若在Status中显示成功打开WSDL文件则测试成功
     
五、创建WebService客户
经过以上几步,我们已经成功发布了一个WebService,现在需要创建一个客户端来调用该服务
  1)创建Java Project:WebServiceClient
  2)引入MyEclipse Libraries
       右键WebServiceClient—>Build Path—>Add Libraries
  
  选择XFire 1.2 HTTP Client Libraries
  
   3)创建HelloWebService.java
   在src目录下创建com.client.HelloWebService.java
   package com.client;

   import java.net.URL;
   import org.codehaus.xfire.client.Client;

   public class HelloWebService {
       public static void main(String[] args) throws Exception
       {
        Client client = new Client(new URL("http://localhost:9090/WebServiceServer/services/HelloWebService?wsdl"));
        Object[] results = client.invoke("example", new Object[] {"hello"});
        System.out.println((String) results[0]);
       }
   }

   4)在确认服务器启动的情况下,运行HelloWebService.java
   
右键点击Run As>Java Application,在控制台中看到如下输出

   

 

 

--------------------------------------

-----------------------------------

-------------------------------------

 

创建Java Test客户端 
    XFire提供了一个动态的代理框架,能够读取WSDL文档和创建潜在的消息服务使Java类来执行在Web Service的行为.该部分将为HelloWorld Web Service写一个Java Web Service客户端 
    6.1增加XFire类库配置 
    为了使example client能够在HelloWorld工程中运行,需要增加XFire HTTP Client类库到工程的构建路径中. 
    1. 在Package Explore视图中右击HelloWorld工程选择Build Path>Add Library 
    2. 选择MyEclipse Libraries 
    3. 选择XFire HTTP Client Libraries


    Figure-17: Choosing the XFire HTTP Client Libraries 
    4. 选择Finish 
    6.2创建HelloWorldClient类 
    执行Java类向导来创建HelloWorldClient类


    Figure-18: HelloWorldClient defined in New Java Class Wizard. 

    Web Service 客户端代码如下:

package org.stephencat.ws;

import org.codehaus.xfire.*;
import org.codehaus.xfire.service.*;
import org.codehaus.xfire.service.binding.*;
import org.codehaus.xfire.client.*;

import java.net.*;

public class HelloWorldClient {

    
/**
     * 
@param args
     
*/
    
public static void main(String[] args) {
        Service srvcModel 
= new
        ObjectServiceFactory().create(IHelloWorldService.
class);
        XFireProxyFactory factory 
=
           
new XFireProxyFactory(XFireFactory.newInstance().getXFire());
        String url 
=
           
"http://localhost:8080/HelloWorld/services/HelloWorldService";
        
try {
            IHelloWorldService srvc 
= (IHelloWorldService)factory.create(srvcModel, url);
           String result 
= srvc.example("hello world");
           System.out.print(result);
        } 
catch (MalformedURLException e){
           e.printStackTrace();
        }


    }

}


    该段代码定义了创建一个XFire web service proxy的过程,该代理支持POJO IHelloWorldService接口 

    右键点击Run As>Java Application或者Debug As>JavaApplication来运行或调试该程序 
 

下面加入自己的实现

创建webservice服务端都一样,说说客户端

因为不可能我们的程序会和webservice放在一起

所以我们在自己的程序里要写一个和服务端的接口一样的类

然后在自己的里面写

        Service srvcModel = new
        ObjectServiceFactory().create(IHelloWorldMyService.class);
        XFireProxyFactory factory =
           new XFireProxyFactory(XFireFactory.newInstance().getXFire());
        String url =
           "http://localhost:8080/HelloWorld/services/HelloWorldService";
        try {
            IHelloWorldMyService srvc = (IHelloWorldMyService)factory.create(srvcModel, url);
           String result = srvc.example("hello world");
           System.out.print(result);
        } catch (MalformedURLException e){
           e.printStackTrace();
        }

IHelloWorldMyService 这个接口和IHelloWorldService 一样的。。里面方法一直就OK

IHelloWorldMyService 代码:

public interface IHelloWorldMyService {
 
 public String example(String message);
 
}

  • 大小: 34.6 KB
  • 大小: 44.7 KB
  • 大小: 46.7 KB
  • 大小: 13.1 KB
  • 大小: 50.1 KB
  • 大小: 35 KB
  • 大小: 35 KB
  • 大小: 35.4 KB
  • 大小: 40.7 KB
  • 大小: 22.3 KB
  • 大小: 53.2 KB
  • 大小: 4.8 KB
  • 大小: 57.9 KB
  • 大小: 34.3 KB
  • 大小: 47.3 KB
  • 大小: 8.9 KB
分享到:
评论

相关推荐

    MyEclipse+XFire开发Web Services

    ### MyEclipse+XFire开发Web Services #### 实验背景与目标 随着互联网技术的发展,Web Services作为一种重要的软件架构模式,在分布式系统中的应用越来越广泛。它允许不同平台、语言的应用程序通过标准协议(如...

    MyEclipse下XFire开发Webservice实例

    本教程将深入探讨如何在MyEclipse集成开发环境中使用XFire来开发Web服务实例。 首先,我们需要了解MyEclipse。MyEclipse是一款强大的Java EE集成开发环境,它是Eclipse的扩展,集成了大量的Web、Java、数据库和应用...

    MyEclipse下XFire开发Webservice实例.doc

    【在MyEclipse中使用XFire开发Web服务】 在MyEclipse环境中,开发基于XFire的Web服务分为几个步骤: 1. **环境配置**:首先确保安装了MyEclipse 7.0及JDK 1.6或更高版本。 2. **创建Web服务项目**:通过File -> ...

    myeclipse xfire 开发webservice实例

    ### XFire Java SOAP框架概述 XFire是一款开源的Java SOAP框架,主要特点包括: ...这不仅有助于理解SOAP WebService的工作原理,还能实际操作并掌握如何使用MyEclipse与XFire框架来构建完整的WebService应用。

    MyEclipse8.0GA下使用Xfire框架开发WebService实例

    ### MyEclipse 8.0 GA 下使用 Xfire 框架开发 WebService 实例 #### 一、WebService 服务端开发步骤 ##### 1. 建立 WebService Project - 在 MyEclipse 中创建一个新的 Web Service 项目,命名为 ProjectName。 -...

    MyEclipse开发Webservice实例详解

    在本文中,我们将深入探讨如何使用MyEclipse开发Webservice的实例,特别关注XFire框架。 1. **XFire框架**: XFire是Java平台上的一个SOAP(简单对象访问协议)框架,它被MyEclipse的Web Services功能所采用。...

    在MyEclipse中使用XFire开发WebService

    在MyEclipse中使用XFire开发WebService是一种常见的Java Web服务实现方式。XFire是一个轻量级、高性能的Java Web服务框架,它简化了创建和消费Web服务的过程。下面将详细介绍如何在MyEclipse环境中利用XFire进行Web...

    myeclipse webservice xfire例子,有图全程讲解,有源码

    在本教程中,我们将探讨如何使用MyEclipse集成开发环境(IDE)结合XFire库来创建、发布和消费Web服务。 首先,让我们了解MyEclipse。MyEclipse是一款强大的Java EE集成开发环境,它提供了丰富的功能,包括对Web服务...

    用XFire开发Webservice简单实例

    本教程将通过一个简单实例详细介绍如何在MyEclipse集成开发环境中使用XFire来开发Web服务。 **一、XFire简介** XFire(后被整合到 CXF 中)是一款基于Java的Web服务框架,它支持SOAP 1.1/1.2、WSDL 1.1、WS-...

    myeclipse XFire Web service 例子

    在myeclipse集成开发环境中,使用XFire可以方便地创建和消费Web服务。 首先,我们来了解如何在myeclipse中创建一个XFire Web服务。这个例子将演示服务端的搭建和客户端的调用过程。服务端通常涉及到以下步骤: 1. ...

    用xfire开发webservice实例(原稿)

    **标题:“用XFire开发Web服务实例(原稿)”** **描述分析:** 这个资源是一个关于使用XFire框架创建Web服务的实际示例项目。XFire是早期流行的一个用于构建SOAP Web服务的Java库,它提供了轻量级且高效的解决方案。...

    xfire开发实例.

    【XFIRE开发实例详解】 XFIRE是一个开源的Java Web服务框架,它简化了创建和部署Web服务的过程。本文将通过一个实例,详细讲解如何使用XFIRE进行Web服务的开发。 1. **XFIRE简介** XFire是Apache CXF项目的前身,...

    myeclipse搭建webservice实例讲解

    ### MyEclipse搭建WebService实例详解 #### 一、概述 本文将详细介绍如何使用MyEclipse集成的XFire框架构建Web Service及其客户端访问的过程。通过本文的学习,您将能够掌握搭建和部署Web Service的基本流程,以及...

    myeclipse搭建webservice实例讲解.pdf

    总结来说,这个实例展示了如何使用MyEclipse和XFire创建一个简单的Web服务,包括服务端的创建、部署以及客户端的调用。这个过程涵盖了Web服务项目创建、接口与实现的编写、服务的部署和客户端的访问等核心步骤,为...

    xfire 5分钟开发一个完整实例.doc

    ### 使用XFire在MyEclipse中快速开发WebService实例 #### 概述 本文将通过一个具体实例介绍如何在MyEclipse环境下使用XFire框架来快速搭建WebService应用。本例涉及的关键技术包括Eclipse IDE、Tomcat服务器、Java...

    webservices xfire实例

    另一个是服务器端,该项目采用的是IDE环境自动生成的,使用的是myeclipse8.6,如果不想使用IDE环境生成就自己下载xfire相应的jar包然后导入,即可自己开发。 该压缩包中还包括一个图形化帮助文档是个人学习中的总结...

Global site tag (gtag.js) - Google Analytics