lbom

          小江西

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            18 隨筆 :: 21 文章 :: 69 評論 :: 0 Trackbacks

          很久沒有動手寫WebService了,這次,借項目間隙,對系統進行一個小改造,將一部分功能使用WS進行封裝,為下一步異構系統集成打下基礎。

          但在WS化時,由于日久生疏,一個小小的WS化變動,卻花了整整好幾天時間!為此,狠下以來,將其過程進行記錄,以便下次參考。

           

          WS整體流程:

          clip_image001

          以下分別介紹:

          1、設計和實現WebService服務端功能組件,用于統一處理針對本應用系統所需進行WebService化的邏輯實現。并將系統邏輯處理中的對象轉成序列化后的String對象,以符合WebService交互標準。

          clip_image002

          2、根據SBPApi.java,生成WSDL等:通過Eclipse右鍵菜單中的WebService-->Create Web Service項。完成后,會在web目錄下建立wsdl目錄和SBPApi.wsdl,在WEB-INF目錄下建立(改寫)server-config.wsdd等文件,并完成對web.xml的修改。其操作流程示如下:

          clip_image003

          3、根據SBPApi.wsdl,生成WebService客戶端開發包和部署文件:

          1)為不影響已有項目,可另建java Web項目;

          2)將wsdl目錄復制至新項目對應的web目錄下;

          3)通過eclipse已提供的webService插件(右鍵)功能,生成客戶端開發包所各文件。此時,所生成的文件與服務端對象文件結構一至。

          clip_image004

          4)調整關聯引用文件,將其調整至客戶端開發包,從而避免與服務器端的引用路徑重復而引發不便,并將服務器SDK中已有文件刪除。

          clip_image005

          5)建立客戶端的快速使用代理SBPClient.java,對WebService服務端交互工作的SBPApiSoapBindingStub.java進行客戶端封裝,并根據服務端中交互對象進行反向工程,其示例結構如下:

          clip_image006

          6)將clientApi下的所有文件打包后,加入測試項目進行測試。此時,因客戶端所使用的服務端對象未包含在WebService客戶端開發包中,因此需要將服務端對象也一同打包。

          7)測試。

          4、開發環境:Eclipse3.3.1.1 + JDK1.5.06 + Apache Axis version: 1.4

          posted on 2010-04-02 15:45 lbom 閱讀(2169) 評論(4)  編輯  收藏

          評論

          # re: 基于Axis,開發和部署WebService應用 2010-04-05 00:09 zzYY
          圖基本上看不清!  回復  更多評論
            

          # re: 基于Axis,開發和部署WebService應用 2010-04-06 10:04 lbom
          @zzYY
          你可將圖片另存,而且圖片本身只是一個示意,如果你需要,可以給我留個mail地址,我將圖片打包給你  回復  更多評論
            

          # re: 基于Axis,開發和部署WebService應用[未登錄] 2010-05-06 15:21 roy
          能把這個文檔的圖片給我發一下么?謝謝royinshanghai@gmail.com  回復  更多評論
            

          # re: 基于Axis,開發和部署WebService應用 2010-05-13 09:44 lbom
          @roy
          郵件已發出,請注意查收  回復  更多評論
            


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


          網站導航:
          博客園   IT新聞   Chat2DB   C++博客   博問  
           
          主站蜘蛛池模板: 乌审旗| 宝丰县| 兴义市| 宜阳县| 昭苏县| 绥棱县| 吴桥县| 余姚市| 大庆市| 桦甸市| 昌黎县| 长阳| 贺州市| 绥宁县| 文水县| 华池县| 丽水市| 红桥区| 平潭县| 噶尔县| 承德市| 海林市| 双峰县| 沙田区| 赤城县| 乌拉特中旗| 阜平县| 根河市| 辽宁省| 新余市| 南丰县| 兰考县| 兖州市| 广安市| 永福县| 连城县| 平泉县| 雅江县| 长泰县| 旬邑县| 正阳县|