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

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

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

    果子的程序人生

    Spring blazeDS Integration destination not exists異常解決

    環境:
    • Spring blazeDS Integration 1.0.0 release
    • blazeDS 3.2.0.3978
    • jdk1.6.0_06
    • flex sdk 3.2.0
    • flex builder 3
    在web.xml中配置DispatcherServlet
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xmlns
    ="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
        xsi:schemaLocation
    ="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
        id
    ="WebApp_ID" version="2.5">
        
    <display-name>flex_server</display-name>
        
    <context-param>
            
    <param-name>contextConfigLocation</param-name>
            
    <param-value>/WEB-INF/context-*.xml</param-value>
        
    </context-param>
        
    <listener>
            
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
        
    </listener>
        
    <servlet>
            
    <servlet-name>flex</servlet-name>
            
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
            
    <load-on-startup>1</load-on-startup>
        
    </servlet>
        
    <servlet-mapping>
            
    <servlet-name>flex</servlet-name>
            
    <url-pattern>/messagebroker/*</url-pattern>
        
    </servlet-mapping>
        
    <welcome-file-list>
            
    <welcome-file>index.html</welcome-file>
        
    </welcome-file-list>
    </web-app>

    在flex-servlet.xml中定義destination
    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
        xmlns:xsi
    ="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"
        xmlns:tx
    ="http://www.springframework.org/schema/tx" xmlns:flex="http://www.springframework.org/schema/flex"
        xsi:schemaLocation
    ="http://www.springframework.org/schema/beans 
        http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
        http://www.springframework.org/schema/context
        http://www.springframework.org/schema/context/spring-context-2.5.xsd
        http://www.springframework.org/schema/tx
        http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
        http://www.springframework.org/schema/flex   
        http://www.springframework.org/schema/flex/spring-flex-1.0.xsd"
    >
        
    <flex:message-broker />
        <!-- premiumService是普通的業務bean -->
        
    <flex:remoting-destination ref="premiumService"/>
    </beans>

    這樣在remoting-config.xml中就不需要定義destination了
    <?xml version="1.0" encoding="UTF-8"?>
    <service id="remoting-service" 
        class
    ="flex.messaging.services.RemotingService">

        
    <adapters>
            
    <adapter-definition id="java-object" class="flex.messaging.services.remoting.adapters.JavaAdapter" default="true"/>
        
    </adapters>

        
    <default-channels>
            
    <channel ref="my-amf"/>
        
    </default-channels>
        
    <!--注釋掉,否則啟動會報錯或出現其他問題
        <destination id="premiumService">
            <properties>
                <source>org.hag.flex.service.PremiumService</source>
            </properties>
        </destination>
        
    -->
    </service>

    測試
    <?xml version="1.0" encoding="utf-8"?>
    <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
        creationComplete
    ="premiumService.getPremiumList()">
        
    <mx:Script>
            
    <![CDATA[
                <!-- 省略import -->
                private function resultHandler(evt:ResultHandler):void
                {
                    Alert.show(evt.result.toString());
                }
                private function faultHandler(evt:FaultHandler):void
                {
                    Alert.show(evt.fault.toString());
                }
            
    ]]>
        
    </mx:Script>
        
    <mx:RemoteObject id="premiumService" ref="premiumService"
            result
    ="resultHandler(event)" fault="faultHandler(event)"/>
    </mx:Application>

    結果這時候報錯,destination "premiumService" either does not exists....
    原因是mxml編譯時要根據remoting-config.xml來處理destination的定義,而我們把premiumService定義在了spring bean中,所以它根本就不知道premiumService的存在。取消掉remoting-config.xml的注釋,再次對mxml進行編譯(如修改后保存),在瀏覽器中清除緩存、刷新,OK,結果出來了。

    注意在tomcat啟動時又要把remoting-config.xml定義的destination注釋掉,否則會出問題。或者干脆在其他地方建立一個文件專門用于mxml的編譯。

    posted on 2009-07-04 00:41 果子 閱讀(873) 評論(1)  編輯  收藏 所屬分類: springjavaflex

    評論

    # re: Spring blazeDS Integration destination not exists異常解決 2009-11-12 00:34 hbbbs

    GOOD,我也碰到了這個問題  回復  更多評論   

    導航

    <2009年7月>
    2829301234
    567891011
    12131415161718
    19202122232425
    2627282930311
    2345678

    統計

    常用鏈接

    留言簿(1)

    隨筆分類

    隨筆檔案

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲一区二区三区国产精品| 欧美a级在线现免费观看| 亚洲午夜国产片在线观看| 18禁亚洲深夜福利人口| 黑人粗长大战亚洲女2021国产精品成人免费视频 | 久久国产一片免费观看| 国产亚洲精品a在线观看| 中国一级特黄的片子免费| 在线亚洲精品自拍| 国产精品区免费视频| 亚洲视频免费在线看| 一级女人18毛片免费| 亚洲精品天堂在线观看| 日本特黄特色免费大片| 日本激情猛烈在线看免费观看| 中文字幕亚洲天堂| 免费精品无码AV片在线观看| 亚洲国产高清在线精品一区| 成人a视频片在线观看免费| 亚洲av乱码中文一区二区三区| 亚洲国产日韩在线观频| 免费国产叼嘿视频大全网站| 亚洲免费在线视频| 精品剧情v国产在免费线观看 | 国内永久免费crm系统z在线| 久久精品国产亚洲AV大全| 24小时免费直播在线观看| 男人免费视频一区二区在线观看| 亚洲精品乱码久久久久久中文字幕| 最好看的中文字幕2019免费| 亚洲AV无码一区二区三区网址 | 91视频精品全国免费观看| 亚洲精品欧洲精品| 免费一级毛片清高播放| 日韩视频在线观看免费| 色欲aⅴ亚洲情无码AV蜜桃| 久久精品国产69国产精品亚洲| 免费电视剧在线观看| 羞羞视频免费网站在线看| 亚洲成A人片在线播放器| 亚洲综合伊人久久综合|