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,在控制台中看到如下输出

最新文章

  1. 图片Base64编码
  2. Unity手撸2048小游戏——背景文字控制
  3. Spring AOP /代理模式/事务管理/读写分离/多数据源管理
  4. 如何解决SoftekBarcode.dll加载失败的问题
  5. MYSQL数据库如何赋予远程某个IP访问权限
  6. Angular 中得 scope 作用域梳理
  7. [MEAN Stack] First API -- 3. Select by ID with Mongoose and Express
  8. Java实战之02Hibernate-03Session中的常用方法
  9. Add controls dynamically in flowlayoutpanel
  10. [iOS] Create TableView & customize UITableViewCell
  11. GDB-Darwin-Extentions
  12. 从运营商小广告到HTTPS
  13. 1381: Munching(BFS)
  14. PAT乙级 1065. 单身狗(25) by Python
  15. 处理input标签的border-radius
  16. springmvc4.0配置ajax请求json格式数据
  17. JSP、HTML页面概述
  18. WPF自定义控件(二)の重写原生控件样式模板
  19. 键盘录入一个文件夹路径,统计该文件夹(包含子文件夹)中每种类型的文件及个数,注意:用文件类型(后缀名,不包含.(点),如:"java","txt")作为key, 用个数作为value,放入到map集合中,遍历map集合
  20. 机器学习技法笔记:16 Finale

热门文章

  1. CodeFirst进行数据迁移之添加字段
  2. php学习笔记-基础篇
  3. MSSQLSERVER服务无法启动的解决方案
  4. Nginx:针对IPv4的内核参数优化
  5. 面试题<初级>
  6. Module 'fileinfo' already loaded in Unknown on line 0
  7. 【python】题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
  8. HotApp
  9. wget下载工具
  10. SVN常用问题汇总