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

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

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

    David.Turing's blog

     

    用JSR181驅(qū)動SpringSide Web Services

    和小白一起探討,覺得如果XFire用JSR181去驅(qū)動,一定會非常簡潔。
    從JSR175發(fā)展過來的JSR181,早期實現(xiàn)于Weblogic Workshop 7.1,我們
    對@WebService, @WebMethod這些標記的最初理解是將Java類通過Annotation
    直接編譯成Weblogic的JWS,BEA作為JSR181標準的Leader,很大膽地將
    JSR181用于Weblogic 9.1,去驅(qū)動Weblogic下一代的WebService框架。

    SpringSide團隊開始選用XFire作為SS 1.0的時候,已經(jīng)充分考慮Xfire在JSR181
    支持上的優(yōu)勢(對比于Axis)。

    作為Spring Web Services的一個最佳實踐,我們已經(jīng)開始考慮基于JSR181驅(qū)動的
    Web Service框架,我們一致認為JSR181能夠為架構(gòu)解耦提供非常切實有效的
    途徑。

    在下一個SS2.0版本中,我們考慮提供以下的DEMO:
    1,基于Security的JSR181 DEMO
    2,基于Conversation的JSR181 DEMO
    3,基于Transaction的JSR181 DEMO
    4,基于Context的JSR181 DEMO

    另外,在框架考慮上,會使用JSR標記Handlers的方式(配置文件也是可以,但放在
    Annotation,帶來的是更好的易讀性)

    ???? package ?examples.webservices.handlers;

    ????@WebService?()
    ????@SOAPMessageHandlers?(?{
    ??????@SOAPMessageHandler?(
    ???????className
    = " examples.webservices.soap_handlers.simple.ServerHandler1 " ),
    ??????@SOAPMessageHandler?(
    ???????className
    = " examples.webservices.soap_handlers.simple.ServerHandler2 " )
    ????}?)

    ????
    public ? class ?HandlersImpl?{
    ????????????
    // Your?Code
    ????}


    另外,在SS2.0的下一個版本中,提供SOAPBinding,可以設置其Style為Document或者RPC,Encode和Literal也是能夠定制的(跟Workshop一樣方便),也是一件簡單的事情:
    @WebService
    @SOAPBinding(style
    =SOAPBinding.Style.DOCUMENT,
    use
    =SOAPBinding.Use.LITERAL,
    parameterStyle
    =SOAPBinding.ParameterStyle.BARE)
    public?class?EchoService?{
    @WebMethod(action
    ="echo")
    @WebResult(targetNamespace
    =“http://www.springside.org.cn”,?name="echoResult")
    public?String?echo(
    @WebParam(targetNamespace
    =“http://www.springside.org.cn”,?name="echoMsg")?String?msg){
    return?msg;
    }

    }

    同時,考慮很多人喜歡搞作SOAP Header,利用它來做一些業(yè)務標記處理,我們會支持下面的方式
    @WebMethod
    public?String?echo(
    @WebParam(name
    ="myHeader",
    header
    =true,
    mode
    =WebParam.Mode.INOUT)?StringHolder?header,
    String?msg){
    String?ret?
    =?header.value?+?",?"?+?msg;
    header.value?
    =?"got?it";
    return?ret;
    }
    來自:
    [http://www.tkk7.com/security/archive/2006/10/31/Spring_JSR181_XFire_WebService.html]

    posted on 2006-10-31 09:47 david.turing 閱讀(4293) 評論(0)  編輯  收藏 所屬分類: SOA/WebService

    導航

    統(tǒng)計

    常用鏈接

    留言簿(110)

    我參與的團隊

    隨筆分類(126)

    隨筆檔案(155)

    文章分類(9)

    文章檔案(19)

    相冊

    搜索

    積分與排名

    最新隨筆

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 五月婷婷综合免费| jjizz全部免费看片| 人人狠狠综合久久亚洲婷婷| 亚洲视频免费在线播放| a级毛片免费完整视频| 亚洲欧美aⅴ在线资源| 亚洲国产第一页www| 亚洲无人区午夜福利码高清完整版| 无码人妻一区二区三区免费手机| 在线成人精品国产区免费| 一级特黄aaa大片免费看| 亚洲av无码一区二区三区四区| 亚洲天堂一区在线| 亚洲国产人成在线观看69网站| 亚洲午夜国产精品无码| 亚洲A丁香五香天堂网| avtt亚洲天堂| 亚洲一级特黄大片在线观看| 亚洲av手机在线观看| 国产一级淫片免费播放| 亚洲国产成人久久综合区| 国产一区视频在线免费观看 | 亚洲精品亚洲人成人网| 亚洲国产成人VA在线观看| 自拍偷自拍亚洲精品情侣| 亚洲国产精品无码久久久秋霞2| 亚洲AV永久无码精品成人| 亚洲理论精品午夜电影| 亚洲字幕AV一区二区三区四区| 亚洲熟妇AV一区二区三区宅男 | 日本zzzzwww大片免费| 国产精品久久久久久久久免费| 91精品免费观看| 国产美女被遭强高潮免费网站| 亚洲国产精品激情在线观看| 亚洲一区精品中文字幕| 亚洲人成网站18禁止| 免费无码又爽又刺激高潮软件| A级毛片内射免费视频| 91麻豆国产自产在线观看亚洲| 91亚洲精品自在在线观看|