JAVA—咖啡馆

——欢迎访问rogerfan的博客,常来《JAVA——咖啡馆》坐坐,喝杯浓香的咖啡,彼此探讨一下JAVA技术,交流工作经验,分享JAVA带来的快乐!本网站部分转载文章,如果有版权问题请与我联系。

BlogJava 首页 新随笔 联系 聚合 管理
  447 Posts :: 145 Stories :: 368 Comments :: 0 Trackbacks
实例的原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,在控制台中看到如下输出

   
posted on 2010-05-27 11:31 rogerfan 阅读(4916) 评论(7)  编辑  收藏 所属分类: 【开源技术】

Feedback

# re: 【转】MyEclipse下XFire开发Webservice实例 2010-07-29 15:33 7CK
好 牛逼。。哈哈 赞一个  回复  更多评论
  

# re: 【转】MyEclipse下XFire开发Webservice实例 2010-07-29 15:34 7CK
找了一上午啊 哈哈 谢了啊  回复  更多评论
  

# re: 【转】MyEclipse下XFire开发Webservice实例 2011-03-14 12:27 xixi
您好,我按您写的 做了。也成功显示了~ 但我想知道 那个HelloWebService.wsdl文件存放在了哪里? 为什么找不到呢?谢谢!  回复  更多评论
  

# re: 【转】MyEclipse下XFire开发Webservice实例 2011-11-08 10:39 GUY
@xixi
那个WSDL不是文件名,它指的是通过WSDL这种方式来设访问HelloWebService  回复  更多评论
  

# re: 【转】MyEclipse下XFire开发Webservice实例[未登录] 2012-05-08 08:38
谢谢楼主分享  回复  更多评论
  

# re: 【转】MyEclipse下XFire开发Webservice实例 2012-12-13 15:37 fangxiang
十分感谢  回复  更多评论
  


只有注册用户登录后才能发表评论。


网站导航: