java2wsdl+Axis2+hibernate開發webservice學習(1) - custom header

環境:

      Eclipse3.5

      Axis2 1.5.4

      Hibernate3.0

      Mysql5.0

      Tomcat6.0

 

一、創建dynamic web工程

      工程名eg:mywebservice.

      解壓axis2.war,將所有的文件copy到/WebContent下,並引入hibernate 以及Mysql等相關必須的包。

 

二、創建service request 和response bean

      UserProfileRequest.java

     

 

      RequestHeader.java

     

 

      UserProfileResponse.java

     

 

      ResponseHeader.java

     

 

三、創建service

 

      OnepassServices.java

     

 

四、生成wsdl

 

      進入build/class 目錄下,運行如下命令:

 

      java2wsdl -cn com.axis2.service.OnepassServices -o ../../resource -of OnepassServices.wsdl -tn http://axis2.com/ws/service -stn com.axis2/ws -dlb doc/lit

 

     在工程目錄下/resource就會生成

             --META-INf

                  ---services.xml

             --OnepassServices.wsdl

 

      注意:打開OnepassServices.wsdl需要修改部分的代碼<xs:element />,比如args[0]等。貼出部分代碼:

     

 

五、根據wsdl生成skeleton

      進入工程目錄下,運行如下命令:

    

      wsdl2java -uri resource/OnepassServices.wsdl -ss -sd -d adb -S ./src -R ./resource/META-INF -p com.axis2.ws.skeleton -ns2p http://bean.axis2.com/xsd=com.axis2.ws.bean.xsd,com.axis2/ws=com.axis2.ws.bean --noBuildXML -noWSDL -uw

 

       刷新工程,就會看到有類似如下代碼生成:

        ---src

               ---com.axis2.ws.bean

               ---com.axis2.ws.bean.xsd

               ---com.axis2.ws.skeleton

                       --- OnepassServicesSkeleton.java


         OnepassServicesSkeleton.java這裏就是我們要寫入業務邏輯的地方。

 

        

 

 

六、生成客戶端測試代碼

         進入工程目錄下,運行如下命令:

 

         wsdl2java -uri resource/OnepassServices.wsdl  -d adb -S src  -p junit.com.axis2.ws.stub  -noBuildXML

 

         ---junit.com.axis2.ws.stub

                 ---OnepassServicesCallbackHandler.java

                 ---OnepassServicesStub.java

 

七、創建測試代碼(Junit Test)

                 ---OnePassTester.java

    

 

 

至此代碼完成。下面說下部署,以Tomcat爲例,其他server會有不同,比如weblogic相對複雜點,後面會有簡單介紹。

 

八、將build/classes 下的skeleton copy到WebContent/WEB-INF/services下,如下結構:

 

        ---onewpassservice

                 ---com

                       ---...

                 ---META-INF

                       ---services.xml

 

九、部署到Tomcat下,並啓動服務

 

十、初始化數據庫

 

       運行dbscripts/init.data.sql

 

      insert into WS_USER(email_address,gender,user_name) values ('[email protected]','f','Robin');

 

 

十一、運行OnePassTester.java中的

 

         @Test

          testGetUserProfile1()

 

 

 如果一切順利,將會看到可愛的green bar.

 

 

第二部分,會說明,如何增加我們自定義的module.

 

 

 

 

 

發佈了30 篇原創文章 · 獲贊 0 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章