<mx:RemoteObject>æ ‡è®°å…许使用AMF3讉K—®˜qœç¨‹æœåŠ¡¾cÈš„æ–ÒŽ(gu¨©)³•åQŒè¦çŸ¥é“在Flex䏿€Žæ ·ä½¿ç”¨Flash Remoting讉K—®æ•°æ®åQŒåº”该先了解一下RemoteObject¾c…R€?/p>
è¦çŸ¥é“在Flex䏿€Žæ ·ä½¿ç”¨Flash Remoting讉K—®æ•°æ®åQŒåº”该先了解一下RemoteObject¾c…R€?/p>
åŒ?mx.rpc.remoting ¾c?public dynamic class RemoteObject ¾l§æ‰¿ RemoteObject → AbstractService → Proxy → Object åç±» RemoteObject
一ã€?lt;mx:RemoteObject>æ ‡è®°
它å…è®æ€‹É用AMF3讉K—®˜qœç¨‹æœåŠ¡¾cÈš„æ–ÒŽ(gu¨©)³•ã€?/p>
1. <mx:RemoteObject>å…è®¸çš„æ ‡è®°å±žæ€§æœ‰åQ?/p>
1
2
3
4
5
6
7
8
9
10
11
12
13 |
< mx:RemoteObject Properties concurrency = "multiple|single|last" destination = "No default." id = "No default." endpoint = "No default." showBusyCursor = "false|true" source = "No default." (currently, Macromedia ColdFusion only) makeObjectsBindable = "false|true" 事äšg fault = "No default." result = "No default." /> |
2. <mx:RemoteObject>æ ‡è®°å¯ä»¥åŒ…å«å¤šä¸ª <mx:method> æ ‡è®°åQ?lt;mx:method>å…è®¸çš„æ ‡è®°å±žæ€§æœ‰åQ?/p>
1
2
3
4
5
6
7
8
9 |
< mx:method Properties concurrency = "multiple|single|last" name = "No default, required." makeObjectsBindable = "false|true" 事äšg fault = "No default." result = "No default." /> |
3. <mx:RemoteObject>æ ‡è®°å¯ä»¥ä¹Ÿåªèƒ½åŒ…å«ä¸€ä¸?lt;mx:arguments> åæ ‡è®ŽÍ¼Œè¯¥åæ ‡è®°æ˜¯ä¸€ä¸ªåºåˆ—æ•°¾l„对象ã€?/p>
二ã€å…¬æœ‰å±žæ€?/p>
1. concurrency : String
表示对åŒä¸€æœåŠ¡æ€Žæ ·˜q›è¡Œå¤šæ¬¡è°ƒç”¨ã€‚ç±»ä¼égºŽXMLConnector/WebServiceConnector/RemotingConnectorçš„multipleSimultaneousAllowed属性。它的默认å€égØ“(f¨´)multipleåQŒå…è®æ€¸‹åˆ—å€?
- MultipleåQšåŒä¸€æ—‰™—´å¯ä»¥æ‰§è¡Œå¤šä¸ªè¯äh±‚。已有的è¯äh±‚ä¸ä¼š(x¨¬)è¢«å–æ¶ˆï¼›
- SingleåQšåŒä¸€æ—‰™—´è°ƒç”¨åªèƒ½æ‰§è¡Œä¸€ä¸ªè¯·æ±‚,多个è¯äh±‚ä¼?x¨¬)报错ï¼?/li>
- LaståQšæœ€åŽä¸€‹Æ¡è¯·æ±‚会(x¨¬)覆盖已有的请求ã€?/li>
2. endpoint: String
å…许开å‘ähå‘˜å¿«é€ŸäØ“(f¨´)RemoteObject destination(ç›®æ ‡)指定endpoint(端点)。而该destination既没有在¾~–译æ—Óž¼Œä¹Ÿæ²¡æœ‰åœ¨ç”¨ä»£ç 新建ChannelSet(通é“é›?æ—¶å‚ç…§services-config.xml。如果设定了该属性,它会(x¨¬)覆盖已有的ChannelSetã€?/p>
如果endpoint çš„url ä»?#8220;https”开养I¼Œž®†ä‹Éç”?SecureAMFChannel, å¦åˆ™ä½¿ç”¨æ™®é€šçš„AMFChannel。{server.name}å’Œ{server.port}æ ‡è®°,å¯ä»¥ç”¨åœ¨endpointçš„urlä¸ï¼Œè¡¨æ˜ŽChannel应该使用用æ¥åŠ è²SWFæ–‡äšgçš„æœåŠ¡å¿U°å’Œç«¯å£ã€?/p>
3. showBusyCursor:Boolean
表示æœåŠ¡æ£åœ¨æ‰§è¡Œæ—¶æ˜¯å¦æ˜¾½CÞZ¸€ä¸ªè¡¨½Cºå¿™¼„Œçš„é¼ æ ‡æŒ‡é’ˆã€?/p>
三ã€å…¬æœ‰æ–¹æ³?/p>
1. RemoteObject () æž„é€ æ–¹æ³?/p>
创å¾ä¸€ä¸ªæ–°çš„RemoteObject对象ã€?/p>
傿•°
destination:String (默认ä¸?null) —RemoteObject çš„destination属性必™åÕdŒ¹é…?services-config.xml ä¸çš„destinationçš„ID属性倹{€?/p>
2. initialized ()
public function initialized(document:Object, id:String):void
åªè¦è®‘Ö®šRemoteObjectæ ‡è®°ž®×ƒ¼š(x¨¬)通过MXML¾~–译器自动调用该æ–ÒŽ(gu¨©)³•。如果ä‹É用ActionScripæ–°å¾RemoteObject实例åQŒåˆ™å¯ä»¥è‡ªè¡Œè°ƒç”¨è¯¥æ–¹æ³•,˜q™å¯¹éªŒè¯å…¶å‚数很有用ã€?/p>
傿•°
- document:Object —RemoteObject 所在的MXML文档
- id:String —RemoteObjec在上˜q°æ–‡æ¡£ä¸çš„ID