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://clq9761.iteye.com/blog/1261963 XFire创建WebService实例应用 XFire使得在JavaEE应用中发布Web服务变得轻而易举.和其他W ...

  2. Spring集成XFire开发WebService

    Spring是眼下最流行的JavaEE Framework,可是使用Spring的Spring-WS开发WebService却十分繁琐.XFire是一个简化WebService开发的开源项目.通过Sp ...

  3. windows下vs2012用gsoap开发webservice实例

    零:说明 1.本文是根据网上前人经验结合自己动手操作写成,开发工具用的vs2012,gsoap用的是gsoap-2.8: 2.gsoap提供的工具简单介绍 1)wsdl2h.exe:根据WSDL文件生 ...

  4. Myeclipse+Axis2+Tomcat开发webService

    1.  下载文件: 需要在axis2官网下载两种类型的axis2文件,bin版和war版(下载地址:http://axis.apache.org/axis2/java/core/download.cg ...

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

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

  6. Spring下使用开发webservice

    依赖包 <!-- CXF Dependencies --> <dependency> <groupId>org.apache.cxf</groupId> ...

  7. Java开发WebService实例(1)

    参考文献:http://blog.sina.com.cn/s/blog_7bd0d6a70101dixc.html 简单的java工程实现 1 首先建立一个Java工程,在里面建一个Web servi ...

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

    外接CSDN链接 http://blog.csdn.net/yuxiangaaaaa/article/details/54948426 这是php初始设置,后面进行重新设置

  9. java开发webservice的几种方式(转载)

    webservice的应用已经越来越广泛了,下面介绍几种在Java体系中开发webservice的方式,相当于做个记录. 1.Axis2方式 Axis是apache下一个开源的webservice开发 ...

随机推荐

  1. Android用ImageView显示本地和网上的图片

    ImageView是Android程序中经常用到的组件,它将一个图片显示到屏幕上. 在UI xml定义一个ImageView如下: public void onCreate(Bundle savedI ...

  2. HTML5 新增属性和废除属性

    删除的属性大多都是可以用CSS替代的一些样式属性 设置网页标题前面的小图标的大小:size <link rel="icon" href="demo_icon.gif ...

  3. man curl_easy_init(原创)

    curl_easy_init(3) libcurl 手册 curl_easy_init(3) 名字 curl_easy_init - 开始一个简单的libcurl会话 梗概 #include < ...

  4. js高级选择器querySelector和querySelectorAll

    querySelector 和 querySelectorAll 方法是 W3C Selectors API规范中定义的.他们的作用是根据 CSS 选择器规范,便捷定位文档中指定元素. 目前几乎主流浏 ...

  5. silverlight控件阴影效果示例

    <ScrollViewer MaxHeight="400" VerticalScrollBarVisibility="Auto" HorizontalSc ...

  6. 百度自动发贴,登录很顺利的模拟实现,但发贴攻关失败,能力有限,追JS过程中颇为痛苦

    攻关失败,且短期内看不到希望,看不到方向,且越来越焦急,目前已知的是,用根据用户的鼠标事件以一定的规则结合其他数据,服务器以这些数据验证是否为真正的手动发贴. 不过闲暇时实现了百度贴吧的自动签到. 较 ...

  7. apache结合svn创建svn资源库

    1.在登录过程中可以查看error日志,如果发生以下提示: (13)Permission denied: Could not open password file 2.运行:chcon -R -h - ...

  8. Phabricator部署手册

    参考:https://secure.phabricator.com/book/phabricator/article/installation_guide/ 概述 phabricator,由faceb ...

  9. js(ext)中,设置[!!异步!!]上传的简单进度条

    代码在updateHmis的历史记录中,此处存档 handler : function() { //显示进度条 Ext.MessageBox.wait('数据上传中...','提示'); //上传数据 ...

  10. 父窗口,子窗口之间的JS"通信"方法

    今天需要在iframe内做一个弹窗,但使用弹窗组件的为子窗口,所以弹窗只在子窗口中显示掩膜层和定位,这样不符合需求. 后来晓勇哥指点,了解到一个以前一直没关注到的东西,每个窗口的全局变量,其实都存在对 ...