Deixei um exemplo abaixo mostrando como é fácil, configurar o AIR para usar remote object.
1: <?xml version="1.0" encoding="utf-8"?>
2: <s:WindowedApplication initialize="init()"
3: xmlns:fx="http://ns.adobe.com/mxml/2009"
4: xmlns:mx="library://ns.adobe.com/flex/mx"
5: xmlns:s="library://ns.adobe.com/flex/spark">
6: <fx:Declarations>
7: </fx:Declarations>
8: <fx:Script>
9: <![CDATA[
10: import mx.collections.ArrayCollection;
11: import mx.controls.Alert;
12: import mx.messaging.Channel;
13: import mx.messaging.ChannelSet;
14: import mx.messaging.channels.AMFChannel;
15: import mx.rpc.events.FaultEvent;
16: import mx.rpc.events.ResultEvent;
17: import mx.rpc.remoting.RemoteObject;
18: private var ro:RemoteObject = new RemoteObject();
19: [Bindable]
20: private var allDados:ArrayCollection = new ArrayCollection();
21: // Funçao de inicialização, seta o canal do AMF
22: private function init():void {
23: var cs:ChannelSet = new ChannelSet();
24: var customChannel:Channel = new AMFChannel("my-amf", "http://localhost:8080/projetoTeste/messagebroker/amf");
25: cs.addChannel(customChannel);
26: ro.channelSet = cs;
27: // Desetination setado
28: ro.destination = "TesteService";
29: // Listeners para a funçao de Busca
30: ro.findAllTestes.addEventListener(ResultEvent.RESULT, resultHandler);
31: ro.findAllTestes.addEventListener(FaultEvent.FAULT, faultHandler);
32: }
33: private function resultHandler(evt:ResultEvent):void {
34: allDados = new ArrayCollection();
35: allDados = evt.result as ArrayCollection;
36: }
37: private function faultHandler(evt:FaultEvent):void {
38: Alert.show(evt.fault.faultDetail, "Error");
39: }
40: private function findAllTestes():void {
41: ro.findAllTestes();
42: }
43: ]]>
44: </fx:Script>
45: <mx:VBox width="100%"
46: height="100%"
47: horizontalAlign="center"
48: verticalAlign="middle">
49: <mx:AdvancedDataGrid width="100%"
50: height="100%"
51: dataProvider="{allDados}">
52: <mx:columns>
53: <mx:AdvancedDataGridColumn width="120"
54: dataField="assunto"
55: headerText="Assunto"/>
56: <mx:AdvancedDataGridColumn width="120"
57: dataField="status"
58: headerText="Status"/>
59: <mx:AdvancedDataGridColumn width="120"
60: dataField="OID"
61: headerText="OID"/>
62: <mx:AdvancedDataGridColumn width="120"
63: dataField="codigo_prioridade"
64: headerText="Cod. Prioridade"/>
65: </mx:columns>
66: </mx:AdvancedDataGrid>
67: <mx:ApplicationControlBar width="100%"
68: bottom="0">
69: <mx:Button label="Buscar"
70: click="findAllTestes()"/>
71: </mx:ApplicationControlBar>
72: </mx:VBox>
73: </s:WindowedApplication>
Postar um comentário