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

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

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

    隨筆-57  評論-117  文章-1  trackbacks-0

    在CXF2版本中,整合Spring3發布CXF WebService就更加簡單了。因為Spring 3提供了annotation注解,而CXF2發布WebService已經不像之前版本的配置那樣(參考老版本發布WebService系列文章:http://www.cnblogs.com/hoojo/archive/2011/03/30/1999563.html),現在發布一個WebService可以直接從Spring的IoC容器中拿到一個對象,發布成WebService服務。當然發布WebService的配置有了些小小的變動,具體請往下看。

     

    在老版本中發布一個WebService,配置applicationContext-server.xml文件中添加如下配置如下:

    jaxws:server的發布方式

    <bean id="userServiceBean" class="com.hoo.service.ComplexUserService"/>
     
    <bean id="inMessageInterceptor" class="com.hoo.interceptor.MessageInterceptor">
        <constructor-arg  value="receive"/>
    </bean>
     
    <bean id="outLoggingInterceptor" class="org.apache.cxf.interceptor.LoggingOutInterceptor"/>
    <!-- 注意下面的address,這里的address的名稱就是訪問的WebService的name -->
    <jaxws:server id="userService" serviceClass="com.hoo.service.IComplexUserService" address="/Users">
        <jaxws:serviceBean>
            <!-- 要暴露的 bean 的引用 -->
            <ref bean="userServiceBean"/>
        </jaxws:serviceBean>
        <jaxws:inInterceptors>
            <ref bean="inMessageInterceptor"/>
        </jaxws:inInterceptors>
        <jaxws:outInterceptors>
            <ref bean="outLoggingInterceptor"/>
        </jaxws:outInterceptors>
    </jaxws:server>

    jaxws:endpoint的發布方式

    <!-- com.hoo.service.ComplexUserService是com.hoo.service.IComplexUserService接口的實現, 這種方法應該不能從Ioc中引用對象 -->
    <jaxws:endpoint id="userService2" implementor="com.hoo.service.ComplexUserService" address="/Users">
        <jaxws:inInterceptors>
            <ref bean="inMessageInterceptor"/>
        </jaxws:inInterceptors>
        <jaxws:outInterceptors>
            <ref bean="outLoggingInterceptor"/>
        </jaxws:outInterceptors>
    </jaxws:endpoint>

    而在2.x新版本中,發布Ioc容器中的對象為一個WebService的方法

    <bean id="userServiceBean" class="com.hoo.service.ComplexUserService"/>
     
    <bean id="inMessageInterceptor" class="com.hoo.interceptor.MessageInterceptor">
        <constructor-arg  value="receive"/>
    </bean>
     
    <bean id="outLoggingInterceptor" class="org.apache.cxf.interceptor.LoggingOutInterceptor"/>
    <!-- 注意下面的address,這里的address的名稱就是訪問的WebService的name;#userServiceBean是直接引用Ioc容器中的Bean對象 -->
    <jaxws:server id="userService" serviceBean="#userServiceBean" address="/Users">
        <jaxws:inInterceptors>
            <ref bean="inMessageInterceptor"/>
        </jaxws:inInterceptors>
        <jaxws:outInterceptors>
            <ref bean="outLoggingInterceptor"/>
        </jaxws:outInterceptors>
    </jaxws:server>
    <!-- 或者這種方式,在老版本中這個是不能引用Ioc容器中的對象,但在2.x中可以直接用#id或#name的方式發布服務 -->
    <jaxws:endpoint id="userService2" implementor="#userServiceBean" address="/Users">
        <jaxws:inInterceptors>
            <ref bean="inMessageInterceptor"/>
        </jaxws:inInterceptors>
        <jaxws:outInterceptors>
            <ref bean="outLoggingInterceptor"/>
        </jaxws:outInterceptors>
    </jaxws:endpoint>

    CXF發布WebService官方參考:http://cxf.apache.org/docs/writing-a-service-with-spring.html



    作者:hoojo
    出處:
    blog:http://blog.csdn.net/IBM_hoojo
             http://hoojo.cnblogs.com
    本文版權歸作者和博客園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接,否則保留追究法律責任的權利。


    版權所有,轉載請注明出處 本文出自:
    分享道版權所有,歡迎轉載,轉載請注明出處,謝謝
    posted on 2012-07-13 17:47 hoojo 閱讀(3936) 評論(0)  編輯  收藏 所屬分類: FrameWork IntegrationJavaEESpringWebService
    主站蜘蛛池模板: 国产免费观看黄AV片| 蜜桃传媒一区二区亚洲AV | 亚洲一本一道一区二区三区| 中文字幕亚洲不卡在线亚瑟| 国内少妇偷人精品视频免费| 国产亚洲女在线线精品| 中文字幕人成人乱码亚洲电影 | 亚洲av综合av一区| 亚洲成人影院在线观看| 亚洲免费综合色在线视频| 在线亚洲精品视频| 久久久国产精品亚洲一区| 国产亚洲精品不卡在线| 亚洲国产成人精品无码久久久久久综合 | 免费无码毛片一区二区APP| 国产精品福利片免费看| 黄色一级视频免费| 亚洲午夜视频在线观看| 国产亚洲AV无码AV男人的天堂 | 亚洲福利视频网址| 无码专区一va亚洲v专区在线| 久久久高清日本道免费观看| 亚洲av无码成人精品区一本二本| 亚洲国产成人综合| 亚洲欧洲日产专区| 亚洲一区二区三区AV无码| 和日本免费不卡在线v| 亚洲综合免费视频| 在线看片v免费观看视频777| 182tv免费视视频线路一二三| 久久免费高清视频| 免费A级毛片av无码| 99爱视频99爱在线观看免费| 四虎影视在线影院在线观看免费视频 | 亚洲欧美国产欧美色欲| 国产男女猛烈无遮挡免费视频| 少妇亚洲免费精品| 俄罗斯极品美女毛片免费播放| 日韩在线不卡免费视频一区| 精品视频一区二区三区免费| 人人玩人人添人人澡免费|