posts - 122,  comments - 25,  trackbacks - 0
          這兩天,項(xiàng)目中需要開(kāi)發(fā)一些webservice接口,我選用了XFire框架,原來(lái)一直在用AXIS。

          很多朋友都在討論XFire和AXIS的優(yōu)劣,就我而言,更喜歡XFire,至少目前是如此。

          最討厭axis要生成一段東西,才能在wsdd文件注冊(cè)服務(wù),很是麻煩。而且,調(diào)試時(shí)要是設(shè)成debug,那可就慘了,一大堆用戶信息,出了異常還不好捕捉。相比之下,XFire的開(kāi)發(fā)就要簡(jiǎn)單的點(diǎn)多了,包括代碼開(kāi)發(fā),配置,還是返回自定義類型,真是easy。不過(guò),客戶端調(diào)用時(shí)(動(dòng)態(tài)模式或根據(jù)WSDL生成Client Stub),返回的自定義類型是否能順利取得,到時(shí)需要研究一下。

          今天,就返回類型問(wèn)題困了好久,還好已經(jīng)解決了。

          對(duì)象的屬性、函數(shù)的參數(shù)和返回值如果為int、String、Date等普通類型以及由普通類型組成的復(fù)雜對(duì)象都無(wú)需定義。我見(jiàn)到只有兩種情況需要定義:

          • 無(wú)法使用泛型定義Collection中元素的類型時(shí)。
          • 需要為屬性定義不同的名字,或者定義復(fù)雜對(duì)象里的某些屬性不要輸出。
          若是遇害到上述情況的話,需要進(jìn)行aegis配置,文件名應(yīng)與接口的文件名相同,并且放在同一目錄下,如UserService.java,則定義一下UserService.aegis.xml文件,定義內(nèi)容如下:
           1 <?xml version="1.0" encoding="UTF-8"?>
           2 <mappings>
           3     <mapping>
           4         <method name="getResources">
                         <
          !--配置getResources服務(wù)的返回值,List內(nèi)對(duì)象為Resource-->
           5             <return-type componentType="com.test.Resource" />
           6         </method>
           7         
           8         <method name="getAuthentication">
           9             <return-type componentType="com.test.Authentication" />
          10         </method>
          11     </mapping>
          12 </mappings>

          若返回的Javabeans存在Collections 時(shí),需要定義一個(gè)與javabean相關(guān)的文件名,如User.aegis.xml,并且放在相同的目錄下:
          <?xml version="1.0" encoding="UTF-8"?>
          <mappings>
              
          <mapping>
                  
          <!--User bean  ,包含了一個(gè)  List  ,  其中的對(duì)象是Resource  -->
                  
          <property name="resources" componentType="com.test.Resource" />
                  
          <!--配置User類,忽略內(nèi)嵌的roles屬性不要輸出XML-->
                  
          <property name="roles" ignore="true" />
              
          </mapping>
          </mappings>


          有空將XFire使用總結(jié)一下,也貼出來(lái)。

          posted on 2007-04-19 19:13 josson 閱讀(498) 評(píng)論(0)  編輯  收藏 所屬分類: java 開(kāi)發(fā)
          <2007年4月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          293012345

          常用鏈接

          留言簿(3)

          隨筆分類

          隨筆檔案

          收藏夾

          搜索

          •  

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 通辽市| 弋阳县| 彭水| 宜昌市| 黑水县| 武平县| 大理市| 东光县| 固阳县| 德昌县| 宁陕县| 襄垣县| 舒城县| 海阳市| 治县。| 崇明县| 定襄县| 平利县| 阿合奇县| 汾阳市| 华池县| 汝阳县| 蒙城县| 东城区| 襄城县| 康保县| 田林县| 汉沽区| 义马市| 托克逊县| 三台县| 观塘区| 宁津县| 罗定市| 延长县| 泰州市| 金乡县| 阆中市| 沅江市| 德保县| 章丘市|