<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Terry.Li-彬

    虛其心,可解天下之問;專其心,可治天下之學;靜其心,可悟天下之理;恒其心,可成天下之業。

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      143 隨筆 :: 344 文章 :: 130 評論 :: 0 Trackbacks
    我比較懶惰,不想把user guide全部翻譯,就記錄一些點吧。
      
      Axis2是全新設計的,在2004年的“Axis峰會”上,大家決定采用新的架構來讓Axis更加的富有彈性,更有效率,并且更加的可配置。Axis2現在具有的一些feature:
      Speed
      Low memory foot print
      AXIOM - AXis Object Model
      Hot Deployment
      Asynchronous Web Services
      MEP Support - Message Exchange Patterns
      Flexibility
      Stability
      Component-oriented deployment
      Transport framework
      WSDL support
      
      有些feature現在看不懂,還是先動手做一下,感性認識一下吧
      
      第一步:下載AXIS2。http://ws.apache.org/axis2/download.cgi。很有趣,在apache的Web Service 的Project目錄下面還看不到AXIS2。要下那個binary的版本,因為里面有例程。
      
      第二步:Copy axis2.war到$TOMCAT_HOME/webapps目錄下面。Tomcat好像只能用JDK1.4,我在JDK1.5 用不出來。
      
      第三步:打開 http://localhost:8080/axis2,就可以看到axis2的Welcome頁面了。點一下Validate 和Services,看是不是都沒有錯誤。都沒有錯誤的話,就表示deploy成功了。那個adminstration頁面可以通過上傳文件來hot deploy Web service,可以用來remote deploy。
      
      第四步:研究例程。先從"samples/userguide/src"目錄下的例程看起。看到寫一個web service很簡單嘛:
      
      public class MyService {
      public OMElement echo(OMElement element) throws XMLStreamException {
      //Praparing the OMElement so that it can be attached to another OM Tree.
      //First the OMElement should be completely build in case it is not fully built and still
      //some of the xml is in the stream.
      element.build();
      //Secondly the OMElement should be detached from the current OMTree so that it can be attached
      //some other OM Tree. Once detached the OmTree will remove its connections to this OMElement.
      element.detach();
      return element;
      }
      
      public void ping(OMElement element) throws XMLStreamException {
      //Do some processing
      }
      public void pingF(OMElement element) throws AxisFault{
      throw new AxisFault("Fault being thrown");
      }
      }
      
      看得出來,函數統一使用OMElement作為參數。在META-INF目錄下面有個services.xml文件:
      <service name="MyService">
      <description>
      This is a sample Web Service with two operations,echo and ping.
      </description>
      <parameter name="ServiceClass" locked="false">userguide.example1.MyService</parameter>
      <operation name="echo">
      <messageReceiver class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>
      </operation>
      <operation name="ping">
      <messageReceiver class="org.apache.axis2.receivers.RawXMLINOnlyMessageReceiver"/>
      </operation>
      </service>
      呵呵,也很簡單嘛。有返回值的就用RawXMLINOutMessageReceiver,沒返回值的就用RawXMLINOnlyMessageReceiver。把它們編譯(要把axis2的jar寫到classpath里去)打包壓到 MyService.aar,包里文件目錄如下:
      ./\META-INF/services.xml
      ./userguide/example1/MyService.class
      把MyService.aar拷貝到$TOMCAT_HOME/webapps/axis2/WEB-INF/services,然后去點一下http://localhost:8080/axis2頁面上的Services,也就是http://localhost:8080/axis2/listServices.jsp,就可以看到MyService已經被列出來了。
      
      關于調用web service的東西蠻多,下次寫吧。
    posted on 2007-11-21 18:07 禮物 閱讀(416) 評論(0)  編輯  收藏 所屬分類: web service
    主站蜘蛛池模板: 久久亚洲中文字幕精品一区四| 日韩欧毛片免费视频| 亚洲av区一区二区三| 亚洲aⅴ无码专区在线观看春色| 最近中文字幕无免费视频| 亚洲va精品中文字幕| 在线视频观看免费视频18| 亚洲五月综合网色九月色| 曰批全过程免费视频在线观看 | 亚洲AV午夜成人影院老师机影院| 国产日韩AV免费无码一区二区| 亚洲中文字幕不卡无码| 久久精品视频免费| 久久综合亚洲色HEZYO社区| 精品无码AV无码免费专区| 亚洲无限乱码一二三四区| 国产卡一卡二卡三免费入口| 亚洲色大成网站www久久九| 国产无遮挡色视频免费视频| 美景之屋4在线未删减免费| 国产亚洲精品线观看动态图| 怡红院免费全部视频在线视频| 亚洲尹人九九大色香蕉网站| 免费毛片a在线观看67194| 亚洲av永久无码天堂网| 亚洲国产精品人人做人人爽| 日韩精品免费视频| 亚洲最大福利视频| 久久久久亚洲av毛片大| 99热在线免费观看| 亚洲av日韩专区在线观看| 亚洲人色婷婷成人网站在线观看| 99久久99热精品免费观看国产| 亚洲一区二区三区高清在线观看| 亚洲不卡AV影片在线播放| 一区二区三区四区免费视频 | 亚洲人成无码网站在线观看| 亚洲日韩欧洲乱码AV夜夜摸| 日本高清在线免费| yellow免费网站| 亚洲国产成人91精品|