Pessoal fiz uma listagem de usuário em um datagrid do flex mais os dados não são apresentados no datagrid … fiz o debug e os dados passam corretamente pelo java quando chega no flex para popular a grid fica invisive. Alguma ideia ?
<s:TitleWindow xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
title="Cadastro de Usuário"
height="463"
width="764"
horizontalCenter="17"
verticalCenter="5"
close="fecharJanela();">
<s:TabBar id="tabs" left="14" y="12" dataProvider="{vs}"/>
<mx:ViewStack id="vs" width="749" height="401" left="8" y="23">
<s:NavigatorContent label="Cadastrar" width="100%" height="100%">
<s:BorderContainer width="100%" height="385" borderWeight="2" cornerRadius="3" dropShadowVisible="true" y="10">
<s:backgroundFill>
<s:LinearGradient rotation="90">
<s:GradientEntry color="0xE2E2E2" />
<s:GradientEntry color="0x323232" />
</s:LinearGradient>
</s:backgroundFill>
<mx:Form x="10" y="14" width="725" height="303" defaultButton="{salvar}">
<mx:FormItem label="Login:">
<s:TextInput id="inputLogin"/>
</mx:FormItem>
<mx:FormItem label="Nome:">
<s:TextInput id="inputNome"/>
</mx:FormItem>
<mx:FormItem label="Nivel:">
<s:TextInput id="inputNivel"/>
</mx:FormItem>
<mx:FormItem label="Unidade:">
<s:TextInput id="inputUnidade"/>
</mx:FormItem>
</mx:Form>
<s:Button id="limpar" label="Limpar" click="limpar2(event);" x="217" y="325"/>
<s:Button id="salvar" label="Salvar" click="inserir();" toolTip="Salvar" x="126" y="324"/>
<s:Button id="apagar" label="Apagar" click="excluir();" x="309" y="326" toolTip="Apagar"/>
</s:BorderContainer>
</s:NavigatorContent>
<s:NavigatorContent label="Listar" width="100%" height="100%" click="listar();init();">
<s:BorderContainer width="746" height="386" borderWeight="2" cornerRadius="3" dropShadowVisible="true" y="10">
<s:backgroundFill>
<s:LinearGradient rotation="90">
<s:GradientEntry color="0xE2E2E2" />
<s:GradientEntry color="0x323232" />
</s:LinearGradient>
</s:backgroundFill>
<mx:DataGrid id="dg" x="5" y="5" width="727" height="367" doubleClickEnabled="true" doubleClick="{tabs.selectedIndex=0}">
<mx:columns>
<mx:DataGridColumn headerText="Login" dataField="login"/>
<mx:DataGridColumn headerText="Nome" dataField="nome"/>
<mx:DataGridColumn headerText="Nivel" dataField="nivel"/>
<mx:DataGridColumn headerText="Unidade" dataField="unidade"/>
</mx:columns>
</mx:DataGrid>
</s:BorderContainer>
</s:NavigatorContent>
</mx:ViewStack>
<fx:Declarations>
<mx:RemoteObject id="servicoUsuario" destination="servicoUsuario">
<mx:method name="listar" result="onResult(event);" fault="onFault(event);"/>
<mx:method name="inserir" result="onResultData(event);" fault="onFault(event);"/>
<mx:method name="alterar" result="onResultData(event);" fault="onFault(event);"/>
<mx:method name="excluir" result="onResultData(event);" fault="onFault(event);"/>
</mx:RemoteObject>
</fx:Declarations>
<fx:Script source="../controle/UsuarioControle.as"/>
Controler
import br.com.sectioaurea.prc.entidade.Usuario;
import flashx.textLayout.conversion.ConversionType;
import mx.collections.ArrayCollection;
import mx.controls.Alert;
import mx.events.ListEvent;
import mx.rpc.events.FaultEvent;
import mx.rpc.events.ResultEvent;
import mx.managers.PopUpManager;
public function init():void{
dg.addEventListener(ListEvent.CHANGE,selectedItems);
}
public function onResult(re:ResultEvent):void{
var data:Object = re.message.body;
dg.dataProvider = data;
}
public function onResultData(re:ResultEvent):void{
servicoUsuario.listar();
}
public function onFault(fault:FaultEvent):void{
trace("Code: "+fault.fault.faultCode);
trace("Detail: "+fault.fault.faultDetail);
trace("String: "+fault.fault.faultString);
}
/***************************
** Apresenta Item Selecionado
****************************/
public function selectedItems(evt:ListEvent):void{
inputLogin.text = dg.selectedItem.login;
inputNome.text = dg.selectedItem.nome;
inputNivel.text = dg.selectedItem.nivel;
inputUnidade.text = dg.selectedItem.unidade;
}
/***************************
** Inserir Usuário
****************************/
public function inserir():void{
//var novoUsuario:Usuario = new Usuario();
//novaOS.numero = inputNumero.text;
}
/***************************
** Alterar Usuário
****************************/
public function alterar():void{
}
/***************************
** Excluir Usuário
****************************/
public function excluir():void{
if(dg.selectedItem != null){
//var novaOS:Os = new Os();
//novaOS.numero = dg.selectedItem.numero;
//servicoOS.excluir(novaOS);
}else{
Alert.show("Selecione um item da tabela!!");
}
}
/***************************
** Listar Usuário
****************************/
public function listar():void{
servicoUsuario.listar();
}
/***************************
** Limpar Tela Cadastro Usuário
****************************/
protected function limpar2(event:MouseEvent):void
{
inputLogin.text = "";
inputNome.text = "";
inputNivel.text = "";
inputUnidade.text = "";
}
/***************************
** Fechar PopUp
****************************/
public function fecharJanela():void{
PopUpManager.removePopUp(this);
}