posts - 32,comments - 8,trackbacks - 0
          Flash 與后臺交互方式包括了:
          1. LoadVars(xml) 實際上就是flash里面一個對象,類似一個連接器。新建之后,通過sendAndLoad獲取、設置值。和httpposter一樣
          var data_lv = new LoadVars(); 
          2. flash remoting. flash需要安裝components;后臺服務器需要OpenAMF。
          gateway_conn = NetServices.createGatewayConnection(); myService = gateway_conn.getService("myservice", this); 
          3. webservice 也是在flash里面初始化一個ws的對象,然后調用。var ws:WebService = new WebService(ws_url);
          4. XMLSocket 主要是即時通訊 var socket:XMLSocket = new XMLSocket();
          5. 直接開flash的socket
          http://androider.javaeye.com/blog/268933
          在一個AMF交互的例子中,服務器建立一個MAP對象,例如:
             HashMap map=new HashMap();  
             map.put("Event", "人物移動");  
             map.put("user", "閃刀浪子");  
             map.put("x", 100);  
             map.put("y", 100);    
          這樣flash就可以獲取這個對象:var obj:Object=new Object();  
          posted @ 2010-06-17 14:15 張辰 閱讀(430) | 評論 (2)編輯 收藏


          1. Spring IoC容器的意義

          使用BeanFactory,根據制定的xml, 動態生成對象然后加載。

          只要是從BeanFactory獲取的對象,都會根據xml進行裝配。


          2. Spring MVC

          在web.xml配置了DispatcherServlet,讓所有請求都被這個servlet攔截。同時配置了這個servlet的初始化對象。
          。init-param = /WEB-INF/Config.xml ->
          。viewResolver::org.springframework.web.servlet.view.InternalResourceViewResolver
          。urlMapping::org.springframework.web.servlet.handler.SimpleUrlHandlerMapping

          這個urlMapping的目標,可能是被spring接管的對象,例如SimpleFormController

          當配置了DispactcherServlet之后,通過設置合適的初始化對象,能夠實現某種MVC模式。



          3. spring + blazeds 集成
          http://static.springsource.org/spring-flex/docs/1.0.x/reference/html/ch02s02.html

          在web.xml配置了2個dispatcherservlet
          。*.service === /WEB-INF/remoting-servlet.xml
          。/messagebroker/* === /WEB-INF/flex-config.xml 表示把blazeds的請求映射到messagebroker


          。第一個servlet繼續配置了urlMapping
          ==HessianServiceExporter可將一個普通bean導出成遠程服務 這樣這些被映射出來的service可以通過url訪問。
          問題:這些service有固定的方法,比如execute,那么這些方法如何被調用了?代碼上看,是被command調用了。
          回答:見第二個配置

          。第二個servlet同樣配置了urlMapping;還包括
          ..MessageBrokerHandlerAdapter
          ..RemotingDestinationExporter -> callDisptacherService -> CallDispatcher -> Command.execute
          問題:那么CallDispatcher的Call是如何調用的?
          回答:在Flash的xml文件里面指定調用了。

           


          這樣故事就全部被串起來了。

          首先blazeds是個servlet,被封裝過后,能夠解析flash傳輸的amf格式。

          通過spring的配置,flash的請求被轉移到了messagebroker = blazeds,同時這個messagebroker依賴了特定的bean,例如callHandler. 這些handler又依賴了service 的屬性,這個屬性就是我可以控制的,同時被flash調用的。

          例如

           



          what is web.xml :: listener 
          它能捕捉到服務器的啟動和停止! 在啟動和停止觸發里面的方法做相應的操作!
          一定是httpServlet
          http://zhidao.baidu.com/question/39980900


          如何加載services-config.xml

          MessageBrokerFactoryBean將會去尋找BlazeDS的配置文件(默認位置為/WEB-INF/flex/services-config.xml)
          posted @ 2010-06-17 09:33 張辰 閱讀(455) | 評論 (2)編輯 收藏
          主站蜘蛛池模板: 诸暨市| 霞浦县| 莱芜市| 眉山市| 贵州省| 七台河市| 深圳市| 黔东| 虹口区| 台前县| 山东省| 广水市| 武城县| 宝山区| 九江县| 东辽县| 阿城市| 葵青区| 承德县| 黔东| 固阳县| 宾川县| 涡阳县| 新和县| 辰溪县| 大城县| 古丈县| 图木舒克市| 屯留县| 凤庆县| 余姚市| 驻马店市| 新巴尔虎左旗| 伊宁县| 阿拉善左旗| 钦州市| 扶风县| 顺义区| 芜湖县| 和龙市| 仁化县|