Java世界

          學習筆記

          導航

          <2012年3月>
          26272829123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

          留言簿(11)

          收藏夾

          隨筆檔案

          文章檔案

          閱讀排行榜

          評論排行榜

          常用鏈接

          統計

          積分與排名

          天籟村

          新華網

          雅虎

          最新評論

          MyEclipse下XFire開發Webservice實例

          最近在研究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,在控制臺中看到如下輸出

            

           

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

          posted on 2012-03-29 12:01 Rabbit 閱讀(3357) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 南郑县| 盐山县| 黎平县| 新建县| 信阳市| 响水县| 格尔木市| 弋阳县| 湘阴县| 鸡泽县| 义马市| 卓资县| 稷山县| 柘荣县| 中牟县| 自贡市| 淄博市| 安徽省| 定兴县| 遵化市| 米林县| 仁寿县| 平和县| 行唐县| 淅川县| 徐水县| 孟州市| 鲜城| 十堰市| 山西省| 陆河县| 娱乐| 华宁县| 博野县| 瑞昌市| 樟树市| 衡东县| 个旧市| 邛崃市| 昌吉市| 大港区|