não consigo preencher minha comboBox. no java ta tudo ok, o problema acho que é no flex. segue meu codigo.
[/code]
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"
xmlns:entidade="entidade.*"
creationComplete="buscar() " xmlns:local="*">
<mx:Script>
<![CDATA[
import mx.controls.List;
import mx.controls.dataGridClasses.DataGridColumn;
import mx.utils.StringUtil;
import mx.managers.DragManager;
import mx.controls.Alert;
import mx.containers.Panel;
import mx.events.DragEvent;
import mx.rpc.events.FaultEvent;
import entidade.NotaFiscal;
import entidade.Produto;
import entidade.ItemNota;
import mx.rpc.events.ResultEvent;
import mx.collections.ArrayCollection;
[Bindable]
private var listaDeNotas:ArrayCollection;
[Bindable]
private var listaDeItens:ArrayCollection;
[Bindable]
private var listaDeProdutos:List;
private function salvarResult(event:ResultEvent):void{
if(event.result != null){
notaFiscal = event.result as NotaFiscal;
buscar();
}
}
private function inserirItensResult(event:ResultEvent):void{
if(event.result != null){
itemNota = event.result as ItemNota;
}
}
private function excluirResult(event:ResultEvent):void{
limpar();
buscar();
}
private function alterarResult(event:ResultEvent):void{
if(event.result != null){
notaFiscal = event.result as NotaFiscal;
buscar();
}
}
private function listarResult(event:ResultEvent):void{
if(event.result != null){
listaDeNotas = event.result as ArrayCollection;
listaDeItens = event.result as ArrayCollection;
//listaDeProdutos = event.result as ArrayCollection;
}else{
listaDeNotas = new ArrayCollection();
listaDeItens = new ArrayCollection();
//listaDeProdutos = new ArrayCollection();
}
}
private function listarResultProdutos(event:ResultEvent):void{
if(event.result != null){
listaDeProdutos = event.result as List;
}else{
listaDeProdutos = new List();
}
}
private function erroFault(event:FaultEvent):void{
Alert.show("Erro: " + event.fault.faultDetail.toString());
}
public function salvar():void{
roNotaFiscal.salvar(notaFiscal);
}
public function alterar():void{
roNotaFiscal.alterar(notaFiscal);
}
public function excluir():void{
roNotaFiscal.excluir(notaFiscal);
}
public function buscar():void{
roNotaFiscal.buscar();
}
public function inserirItens():void{
roNotaFiscal.inserirItens();
}
public function buscarPorNotaFiscal():void{
roNotaFiscal.buscarPorNotaFiscal();
}
public function listarProdutos():void{
roProduto.listar();
}
public function listarItens():void{
roNotaFiscal.pegaItens();
}
public function limpar():void{
notaFiscal = new NotaFiscal();
}
private function dragEnterHandler(event:DragEvent):void{
var dropTarget:Panel=Panel(event.currentTarget);
DragManager.acceptDragDrop(dropTarget);
}
private function dragDropHandler(event:DragEvent):void{
notaFiscal = event.dragSource.dataForFormat("items")[0] as NotaFiscal;
}
]]>
</mx:Script>
<entidade:NotaFiscal id="notaFiscal"/>
<entidade:Produto id="produto"/>
<entidade:ItemNota id="itemNota"/>
<mx:SeriesZoom id="seriesZoom" duration="2000"/>
<mx:Binding source="Number(tiIdNota.text)" destination="notaFiscal.id"/>
<mx:Binding source="data(tiDataEmissao.text)" destination="notaFiscal.dataEmissao"/>
<mx:Panel width="100%" height="177" layout="absolute"
title="Cadastro de Notas"
dragEnter="dragEnterHandler(event);"
dragDrop="dragDropHandler(event);">
<mx:Label x="10" y="10" text=" Id: #"/>
<mx:Label x="10" y="38" text="Data de Emissao: *"/>
<mx:TextInput x="56" y="8" width="81" enabled="false" editable="false" id="tiIdNota"
text="{notaFiscal.id == 0 || isNaN(notaFiscal.id) ? null : notaFiscal.id}"/>
<mx:TextInput x="133" y="36" maxChars="100" width="246" id="tiDataEmissao" text="{notaFiscal.dataEmissao}"/>
<mx:ComboBox id="cbProdutos"
dataProvider="{listaDeProdutos}" labelField="{produto.nome}" x="77" y="69" width="150">
</mx:ComboBox>
<mx:Label x="10" y="73" text="Produtos:"/>
<mx:ControlBar>
<mx:Button label="Salvar" click="salvar()"/>
<mx:Button label="Excluir" click="excluir()"/>
<mx:Button label="Alterar" click="alterar()"/>
<mx:Button label="Limpar" click="limpar()"/>
<mx:Button label="Inserir Iten" click="cbProdutos.selectedItem "/>
</mx:ControlBar>
</mx:Panel>
<mx:RemoteObject id="roNotaFiscal" destination="notaFiscal">
<mx:method name="salvar"
fault="erroFault(event)"
result="salvarResult(event)"/>
<mx:method name="alterar"
fault="erroFault(event)"
result="alterarResult(event)"/>
<mx:method name="excluir"
fault="erroFault(event)"
result="excluirResult(event)"/>
<mx:method name="buscar"
fault="erroFault(event)"
result="listarResult(event)"/>
<mx:method name="pegaItens"
fault="erroFault(event)"
result="listarResult(event)"/>
<mx:method name="inserirItens"
fault="erroFault(event)"
result="inserirItensResult(event)"/>
</mx:RemoteObject>
<mx:RemoteObject id="roProduto" destination="produto">
<mx:method name="listar"
fault="erroFault(event)"
result="listarResultProdutos(event)"/>
</mx:RemoteObject>
<mx:Panel x="10" y="185" width="462" height="138" layout="absolute" title="Lista de Notas Fiscais">
<mx:DataGrid x="0" y="0" width="432" height="120"
dragEnabled="true"
dataProvider="{listaDeNotas , listaDeItens}"
id="dgNotas">
<mx:columns>
<mx:DataGridColumn headerText="Id_NotaFiscal" dataField="id" width="100"/>
<mx:DataGridColumn headerText="Data_Emissao" dataField="dataEmissao" width="100"/>
<mx:DataGridColumn headerText="Id_Item" dataField="{itemNota.id}"/>
<mx:DataGridColumn headerText="Id_Produto" dataField="{produto.id}"/>
<mx:DataGridColumn headerText="Quantidade" dataField="{itemNota.quantidade}"/>
</mx:columns>
</mx:DataGrid>
</mx:Panel>
</mx:Application>