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

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

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

    kingpub

    海內存知己,博客若比鄰

     

    用Axis for Java進行Web Services開發 (1)

    用Axis 1.1 for Java進行Web Services開發
    下面的所有幾乎來自Axis1.1的文檔。但不完全來自文檔,本人做了部分修改,這些修改完全出自國內讀者的需要。
    什么是SOAP?
    SOAP是一個基于XML的用于應用程序之間通信數據編碼的傳輸協議。最初由微軟和Userland Software提出,隨著不斷地完善和改進,SOAP很快被業界廣泛應用,目前完全發布版本是1.1。在其發展過程中,W3C XML標準工作小組積極促成SOAP成為一個真正的開放標準。在寫作此文檔之時,SOAP1.2草案已經發布,1.2對1.1中相對混亂的部分做了改進。
    SOAP被廣泛作為新一代跨平臺、跨語言分布計算Web Services的重要部分。
    這里太膚淺的說明,請參閱我的整理《一步一步學習SOAP》。
    什么是Axis?
    Axis本質上就是一個SOAP引擎,提供創建服務器端、客戶端和網關SOAP操作的基本框架。Axis目前版本是為Java編寫的,不過為C++的版本正在開發中。
    但Axis并不完全是一個SOAP引擎,它還包括:
    ? 是一個獨立的SOAP服務器
    ? 是一個嵌入Servlet引擎(例如Tomcat)的服務器
    ? 支持WSDL。
    ? 提供轉化WSDL為Java類的工具。
    ? 提供例子程序
    ? 提供TCP/IP數據包監視工具。
    Axis是第三代Apache SOAP,從2000年起,SOAP v2開發小組開始討論如何讓Axis更加靈活、可配置,以及能夠處理SOAP和來自W3C的各種XML標準。通過不斷地討論和代碼編寫,Axis目前取得了如下成果:
    ? 速度提高。 Axis通過基于事件的SAX對XML文檔進行處理,從而在速度和效率上比Apache SOAP有所提高。
    ? 靈活性提高。
    ? 穩定性提高。
    ? 提供面向組件的部署。
    ? 提供一個簡潔的傳輸抽象框架。其核心引擎完全于傳輸方式獨立。從而使基于何種協議傳輸的選擇更加靈活。
    ? 支持WSDL。包括到處WSDL和客戶代理生成等。
    在目前發行1.1版本中有什么東西?
    ? SOAP1.1/1.2引擎。
    ? 靈活的配置和部署系統
    ? 支持及時自動生成SOAP服務(JWS)。
    ? 支持所有的基本數據類型,為自定義串行操作提供類型映射系統
    ? JavaBean的自動串行操作,包括將自定義屬性類型映射到XML的屬性和元素。
    ? RPC和基于消息的SOAP服務提供者。
    ? 從部署好的服務自動生成WSDL。
    ? WSDL2Java工具可以從WSDL描述文件中產生相應的客戶和服務器端SOAP操作框架。
    ? 初步提供安全擴展,能夠與Servlet2.2安全集成。
    ? 通過HTTP Cookie和與傳輸無關的SOAP頭信息提供會話跟蹤。
    ? 初步支持帶附件的SOAP消息。
    ? 在EJB方面提供把EJB作為Web服務的訪問途經。
    ? 基于Servlet的HTTP傳輸。
    ? 基于JMS的傳輸。
    ? 獨立的服務器(但需要HTTP 服務器和Servlet容器支持)。
    ? 提供客戶端、服務器端相關應用程序的樣例。
    Axis的運行需要如下組件包
    ? axis.jar
    ? jaxrpc.jar
    ? saaj.jar
    ? commons-logging.jar
    ? commons-discovery.jar
    ? wsdl4j.jar
    ? 符合JAXP-1.1的XML處理器。
    一步一步開始用Axis進行Web Services操作
    下面給出一段簡單的調用Web Services方法的客戶端代碼(由于原文檔中直接用導入包的方式初學者不易了解那個類在那個包中,所以下面我做了一些簡單的修改,希望能給學習者清晰的思路):
    public class TestClient {

    public static void main(String[] args) {
    try{
    String endpoint="http://localhost:8080/axis/SayHello.jws?wsdl";// 調用的web服務的url地址,這里是一個http請求,希望得到的結果是wsdl文檔。
    org.apache.axis.client.Service service=new org.apache.axis.client.Service();//建立請求服務框架實例。
    /*
    * org.apache.axis.client.Service實現JAX-RPCs javax.xml.rpc.Services接口
    * 該接口充當產生下面提到的org.apache.axis.client.Call實例
    * 的角色。
    */
    org.apache.axis.client.Call call=(org.apache.axis.client.Call)service.createCall();//從框架中生成一個維護調用的實例。
    /*
    * org.apache.axis.client.Call實現了JAX-RPCs javax.xml.rpc.Call接口。
    */
    call.setTargetEndpointAddress(new java.net.URL(endpoint));
    call.setOperationName(new javax.xml.namespace.QName("http://www.edu-edu.com.cn/luopc/ws","echoString"));//設置需要調用的函數名稱
    String result=(String)call.invoke(new Object[]{"hello!"});
    System.out.println(result);

    }catch(Exception e){
    System.err.println(e.toString());
    }
    }
    }

    posted on 2006-06-08 18:05 xiaofeng 閱讀(310) 評論(2)  編輯  收藏

    評論

    # re: 用Axis for Java進行Web Services開發 (1) 2010-11-22 20:27 孫垚

    您好,call.setOperationName(new javax.xml.namespace.QName("http://www.edu-edu.com.cn/luopc/ws","echoString"));
    這句中的"http://www.edu-edu.com.cn/luopc/ws",是個什么東西啊
    為什么我的按照你這個寫了之后,報Exception in thread "main" java.lang.NoClassDefFoundError: com/esri/arcgis/security/util/ArcGISTokenException錯誤啊?我的郵箱zhanshenyan@126.com,謝謝  回復  更多評論   

    # re: 用Axis for Java進行Web Services開發 (1)[未登錄] 2011-09-29 10:55 matrix

    @孫垚
    缺少arcgis_agsws_stubs.jar  回復  更多評論   


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


    網站導航:
     

    導航

    統計

    常用鏈接

    留言簿(2)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    收藏夾

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲av综合avav中文| 亚洲一区二区三区无码影院| 91亚洲导航深夜福利| 国产在线精品观看免费观看 | 日韩不卡免费视频| 亚洲bt加勒比一区二区| 久久精品一区二区免费看| 亚洲精品成人片在线播放| 久久九九AV免费精品| 亚洲欧洲日产韩国在线| a级毛片无码免费真人| 爱爱帝国亚洲一区二区三区| 免费萌白酱国产一区二区| 无码日韩人妻AV一区免费l| 亚洲一级黄色视频| 久久午夜夜伦鲁鲁片免费无码| 67pao强力打造67194在线午夜亚洲 | 国外成人免费高清激情视频| 特级无码毛片免费视频| 国产亚洲情侣一区二区无| 国产免费拔擦拔擦8X高清在线人 | 亚洲国产一区在线| 精品福利一区二区三区免费视频| 亚洲av产在线精品亚洲第一站| 精品久久久久久久免费人妻| 曰韩无码AV片免费播放不卡 | 亚洲成年轻人电影网站www| 青青青国产在线观看免费网站| 亚洲AV日韩AV无码污污网站| 久久精品国产亚洲精品| 免费国产黄网站在线观看| 亚洲综合av一区二区三区不卡 | 好男人视频社区精品免费| 日日狠狠久久偷偷色综合免费| 久久夜色精品国产亚洲| 久久久久久国产精品免费免费 | 免费国产美女爽到喷出水来视频| 国内精品免费久久影院| 亚洲最大的成人网| 精品国产综合成人亚洲区| 在线免费视频一区|