最近的研究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,创建成功后看到的project文件夹例如以下:
   

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,向导将为project自己主动创建相应的接口类与实现类
    

创建成功后查看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
   

在部署向导中选择项目、server
   

2)启动server
   
   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是serverport号,services在之前的web.xml中指定
   若在Status中显示成功打开WSDL文件则測试成功
     
五、创建WebServiceclient
经过以上几步,我们已经成功公布了一个WebService。如今须要创建一个client来调用该服务
  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)在确认server启动的情况下,执行HelloWebService.java
   右键点击Run As>Java Application,在控制台中看到例如以下输出

这样做的例子,甚至完成。

MyEclipse下一个XFire发展Webservice示例的更多相关文章

  1. (转)Web Service入门简介(一个简单的WebService示例)

    Web Service入门简介 一.Web Service简介 1.1.Web Service基本概念 Web Service也叫XML Web Service WebService是一种可以接收从I ...

  2. Web Service入门简介(一个简单的WebService示例)

    Web Service入门简介 一.Web Service简介 1.1.Web Service基本概念 Web Service也叫XML Web Service WebService是一种可以接收从I ...

  3. [xfire]使用xfire开发webservice的简单示例

    目前项目上有用到xfire,所以临时看了些xfire的资料和示例,自己照着写了一个简单示例. xfire在2007年后已经停止更新,正式更名为apache cxf,也可以说是xfire2.0. xfi ...

  4. 利用MyEclipse开发一个调用webservice接口的程序

    上一篇文章我们已经学习了如何使用Java 工具MyEclipse开发一个webservice接口,那么接口开发好了如何调用?接下来我们就来解决这个问题. 1:首先随便创建一个Java project选 ...

  5. 一个简单的webservice的demo(下)winform异步调用webservice

    绕了一大圈,又开始接触winform的项目来了,虽然很小吧.写一个winform的异步调用webservice的demo,还是简单的. 一个简单的Webservice的demo,简单模拟服务 一个简单 ...

  6. Go将统治下一个10年?Go语言发展现状分析

    “本文是国内Go语言大中华区首席布道师——许式伟,在QCon2015上海站上的分享.他预测Go语言10年内一定会超过C和java,并且统治这一个10年. Go语言语法及标准库变化 Go从1.0版本到现 ...

  7. Cocos发展Visual Studio下一个libcurl图书馆开发环境的搭建

    我们解释win32在Visual Studio下一个libcurl图书馆开发环境的搭建.Cocos2d-x发动机实际上与Win32在访问libcurl库.Cocos2d-x 3.x在libcurl库文 ...

  8. 使用RSA进行信息加密解密的WebService示例

    使用RSA进行信息加密解密的WebService示例 按:以下文字涉及RSA对WebService传递的数据的加密解密,如果您已经熟知RSA或是有其它更好的方法请不要往下看以免浪费时间. WebSer ...

  9. 一个简单的Webservice的demo,简单模拟服务

    前段时间一直在学习WCF,匆匆忙忙的把<WCF全面解析>和<WCF服务编程>看了一遍,好多东西都不是很懂,又听了一下WCF分布式开发的网络教程,算是马马虎虎的明白点了.回顾了一 ...

随机推荐

  1. 数据结构之计算器的实现(JAVA)(四)

    原理: 1.将中序表达式变化兴许表达式 2.当前字符为数字,将该数字放入栈中 3.当前字符为操作符,从栈中取出两个树,依据操作符来运算,将运算结果放入到栈中 4.反复,直到将字符操作完.此时栈中仅仅剩 ...

  2. iOS_11_tableViewCell使用alertView变更数据

    最后效果图: Girl.h // // Girl.h // 11_tableView的使用_红楼梦 // // Created by beyond on 14-7-26. // Copyright ( ...

  3. Spring.net-业务层仓储

    Spring.net-业务层仓储 本系列目录:ASP.NET MVC4入门到精通系列目录汇总 上一节,我们已经把项目框架的雏形搭建好了,那么现在我来开始业务实现,在业务实现的过程当中,不断的来完善我们 ...

  4. Highcharts中文教程

    http://www.hcharts.cn/docs/index.php?doc=start

  5. iOS_24_画画板(含取色板)

    终于效果例如以下: 一.简单说明 1.使用一个数组 strokesArr(笔画数组)记录全部笔画.数组中保存的是一个个的笔画字典,一个字典就是一个笔画.笔画字典中有三项:笔画的大小.颜色.points ...

  6. KindEditor参数具体解释

    width 编辑器的宽度.能够设置px或%.比textarea输入框样式表宽度优先度高. 数据类型: String 默认值: textarea输入框的宽度 演示样例: K.create('#id',  ...

  7. DEMO阶段已完成,今天,要深入钻

    今天老师整理我的代码,发现,当时我没搞清楚这是正常的,由于我没有在一开始发挥到其翻译,而没有分析. 只要,研究底部是正确的.为了更好地理解代码. 上午:OSGEARTH视频教程. 上午,DX11机械仿 ...

  8. JUnit实战(2) - JUnit核心(使用Suite来组合测试)

    创建Java Project项目:ch02-internals MasterTestSuite.java package com.manning.junitbook.ch02.internals; i ...

  9. 全栈JavaScript路(八)得知 CDATASection 种类 节点

    CDATASection 只船舶类型节点 基于XML 文件.演出CDATA 数据. 构造函数: CDATASection function(){[native code]} CDATASection ...

  10. java中 try return finally return(转)

    finally块里面的代码一般都是会执行的,除非执行 System.exit(int),停止虚拟机,断电. 1.若try代码块里面有return ,假设要return 的值 是A,A为基本类型或者被f ...