最近在研究JAVA开发Webservice,发现网络上比较流行的几种选择AXIS、XFire、CFX(XFire的下一代),前几天转了几篇关于这三种选择的比较的文章,对它们已经有了些概念。决定自己实践一个例子

在开始前,先介绍一些概念:

XFire Java SOAP框架概述 (摘自:http://tech.it168.com/j/e/2006-10-28/200610281432707.shtml )
    MyEclipse Web Services是建立在XFire Java SOAP框架和工具基础上的, XFire是一款开源的Java SOAP框架。它拥有一个轻量级的信息处理模块,通过STAX来与SOAP信息相结合。提供了一个工作在Web Services下的简单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://localhost: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,在控制台中看到如下输出

本次实例到此就算完成了。

MyEclipse下XFire开发Webservice实例相关推荐

  1. 用xfire开发webservice实例

    http://sailinglxg.iteye.com/blog/173679 用xfire开发webservice总结 本实例是以简单的加减法(a+b和a-b)运算实现用xfire开发webserv ...

  2. java xfire_Java -- 在Eclipse上使用XFire开发WebService

    终于,使用Java完成了一个WebService的例子,其中的一个非常小的问题,折腾了我将近一天的时间.下面给出步骤,说明在Java平台上如何开发WebService. 采用的工具:Eclipse3. ...

  3. Myeclipse下PHP开发环境搭建及运行

    一.安装PHPEclipse插件 PHPEclipse下载:http://download.csdn.net/detail/yuxiangaaaaa/9750968 下载压缩包后,解压,把featur ...

  4. xfire开发webservice

    https://blog.csdn.net/buster2014/article/details/47335863

  5. java开发webservice的几种方式

    为什么80%的码农都做不了架构师?>>>    webservice的应用已经越来越广泛了,下面介绍几种在Java体系中开发webservice的方式,相当于做个记录. 1.Axis ...

  6. 用Java 开发 WebService Axis简单实例

    用 Java 开发 WebService Axis 简单实例 在开发之前, 先了解一下AXIS,axis目前出现的2版本以其灵活性,快速开发工具的集成高于xfire而使用者居其上.用Eclipse开发 ...

  7. myeclipse java可视化_使用MyEclipse可视化开发Hibernate实例

    使用MyEclipse可视化开发Hibernate实例 2.7节的例子源代码在配套光盘sourcecode/workspace目录的chapter02_first项目中. 这个实例主要演示如何使用My ...

  8. Java程序员从笨鸟到菜鸟之(一百零九)一步一步学习webservice(三)开发第一个基于XFire的webservice

    在日常开发中,常用的webservice引擎主要有Axis,axis2,Xfire以及cxf(Xfire的升级版).现在只有axis2和cxf官方有更新.今天我们先以一个比较老的引擎为例.来讲诉一下w ...

  9. java xfire webservice 异步_[Java教程]Java中使用webservice,简化开发(xfire的webservice)...

    [Java教程]Java中使用webservice,简化开发(xfire的webservice) 0 2016-01-07 15:00:11 首先,使用到的jar先导入项目中, xbean-sprin ...

最新文章

  1. spring IOC创建对象方式
  2. 拾谈“用最有效率的方法算出2乘以8等於几?”
  3. C#实现身份证号码验证的方法
  4. poj12652954 [皮克定理 格点多边形]【学习笔记】
  5. Js函数function基础理解
  6. CentOS6.5下安装rzsz
  7. 有一个懂机械、懂焊接、懂电子的爹是什么概念。。。
  8. Verilog语言实现并行(循环冗余码)CRC校验
  9. Waymo自动驾驶数据集介绍与使用教程
  10. 3c vrrp的接口监视_主备冗余协议,VRRP基础,状态机选举及VRRP配置,理论+实战...
  11. 今天上网感觉有点儿卡,上了路由器一看,数据包狂跳
  12. java集合,Collection,list,set,map汇总
  13. linux log4j 使用
  14. OpenWrt running on VMware
  15. camtasia studio2022新版本高清录屏编辑无水印
  16. 常见的图标库有哪些?
  17. 图片制作、LOGO制作、ICO文件
  18. 「题解」agc031_e Snuke the Phantom Thief
  19. 云和恩墨 | 安全稳健 - 全面保障某城商行核心系统大版本顺利升级
  20. 孝感市小学生机器人编程比赛_小学生获机器人大赛一等奖 编程是语文老师教的...

热门文章

  1. 黑客必须了解的网络知识
  2. sqlite3使用简介
  3. windows Tracert命令
  4. Python 数据全部显示,去掉中间省略号(pandas、...)
  5. Fiddler的下载安装与使用(流量抓包、手机抓包、拦截包、编辑包、重发包)
  6. Lynis 检测自身安全漏洞工具(本机)
  7. C/C++面试题—合并两个排序的链表【递归和循环两种方式】
  8. python版:装饰器模式
  9. 函数、迭代器、生成器、装饰器
  10. Python基础:函数的介绍及应用