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

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

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

    無為

    無為則可為,無為則至深!

      BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
      190 Posts :: 291 Stories :: 258 Comments :: 0 Trackbacks
    Atlas給我們提供了一種非常簡單的方式去調用web service,大大的簡化了我們開發的復雜性。在Atlas中標準的調用web service方法是在頁面中添加一個ScriptManager,然后將所需的web service添加到Services Template下,如:

    <atlas:ScriptManagerID="scriptManager"runat="server"EnableScriptComponents="true"
    ???????
    <Services>
    ???????
    ????<atlas:ServiceReferencePath="~/atlas/samples/services/SimpleService.asmx"/>
    ???????
    </Services>
    ??? </
    atlas:ScriptManager>

    ??? 這樣我們就可以通過如下javascript方法調用到遠程的web service

    ?? requestSimpleService = Quickstart.Samples.SimpleService.EchoString(
    ??????????? document.getElementById('inputName').value,?????? //params
    ???????????
    OnComplete,???? //Complete event
    ???????????
    OnTimeout?????? //Timeout event
    ???????????
    );

    這個例子可以在atlas doc工程中找到,非常簡單。然而,當我們需要在頁面加載的時候調用web service的時候,就可能會遇到一定的麻煩了。在atlas doc的示例中也有這個例子,它是通過atlas 擴展的xml-script 客戶端開發模式來調用,即如下代碼:

    <scripttype="text/xml-script">
    ???????
    <page xmlns:script="http://schemas.microsoft.com/xml-script/2005">
    ????????? <components>
    ??????????? <application id="application" load="OnApplicationLoad" />
    ????????? </components>
    ??????? </page>
    ??? </script>

    這樣我們就可以寫一個名為OnApplicationLoadjavascript函數,在函數中去調用web service,同樣非常方便。但是,當我們想用頁面的ClientScript.RegisterStartupScript方法給頁面添加一個加載時自動調用web service的時候,那麻煩就來了,它會提示你,要調用的web service類型未定義。在保證目標web service存在,ServiceReference引用也添加進來的情況下,為什么會出現這樣的錯誤呢?一種可能是web service還沒有被注冊。因為我們用RegisterStartupScript注冊javacript的,那么是不是這里注冊的代碼在atlas客戶端代碼前執行的?沒錯,問題就出在這里。用Fiddler調試頁面請求的過程可以看到有這樣一個請求atlas/atlas/samples/services/SimpleService.asmx/js,它返回的代碼如下:

    Type.registerNamespace('Quickstart.Samples');

    Quickstart.Samples.SimpleService=new function() {

    this.path = "http://localhost:2236/atlas/atlas/samples/services/SimpleService.asmx";

    this.appPath = "http://localhost:2236/atlas/";

    var cm=Sys.Net.ServiceMethod.createProxyMethod;

    cm(this,"EchoString","s");

    }

    可以看出,這段代碼就是atlas自動幫我們注冊了web service的引用類型,沒有這段類型定義,客戶根本就沒有我們



    凡是有該標志的文章,都是該blog博主Caoer(草兒)原創,凡是索引、收藏
    、轉載請注明來處和原文作者。非常感謝。

    posted on 2006-06-10 12:46 草兒 閱讀(287) 評論(0)  編輯  收藏

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


    網站導航:
     
    主站蜘蛛池模板: 两个人看的www免费视频| 日本妇人成熟免费中文字幕| 亚洲AV无码码潮喷在线观看| 最近新韩国日本免费观看| a级黄色毛片免费播放视频| 亚洲综合自拍成人| 国产成人精品123区免费视频| 999zyz**站免费毛片| 最新国产成人亚洲精品影院| 免费少妇a级毛片| 日本免费人成在线网站| 男女超爽视频免费播放| 亚洲色图.com| 亚洲日韩在线中文字幕第一页| 91精品国产免费久久国语蜜臀| 免费亚洲视频在线观看| 亚洲综合综合在线| 国产L精品国产亚洲区久久| 亚洲视频免费播放| 成人免费无码H在线观看不卡| 亚洲色偷偷色噜噜狠狠99网| 国产精品亚洲а∨无码播放| 成年女人永久免费观看片| 久久这里只精品热免费99| 美女又黄又免费的视频| 亚洲中文无韩国r级电影| 国产1024精品视频专区免费| 中文字幕乱码系列免费| 无码天堂亚洲国产AV| 亚洲国产成人久久| 亚洲日本va午夜中文字幕一区| 亚洲成AV人在线观看网址| 大地资源在线观看免费高清| 中文字幕乱码一区二区免费| 日本视频免费观看| 亚洲大尺度无码无码专线一区| 亚洲美女视频网址| 亚洲成av人影院| 亚洲真人无码永久在线| 免费h成人黄漫画嘿咻破解版| 久久不见久久见中文字幕免费 |