Acho que na hora de eu copiar o codigo eu esqueci de copiar o remote
class., mas aqui no meu codigo já tem esta metadata

Em 24 de janeiro de 2012 09:59, Fredy Gadotti <[email protected]>escreveu:

> Tenta colocar a Metadata de RemoteClass na classe TipoPapersDTO também.
> Acredito que o tipo de mapeamento seja do modo implicito, assim atribuindo
> null ao invés de dar uma RTE.
>
> Att,
>
> Fredy.
>
> 2012/1/23 Filipe Motta <[email protected]>
>
>> att
>>
>> Ele anula na function eventoResultListarTiposPapers(), depois de listar
>> todos os tipo de papers.
>>
>> ***********************
>> [RemoteClass(alias="PapersDTO")]
>>  [Bindable]
>> public class PapersDTO
>>  {
>>   private var _key:int;
>>   public function get key():Number {return this._key;}
>>   public function set key(value:Number):void{_key = value}
>>
>>   private var _codigo:int;
>>   public function get codigo():Number {return this._codigo;}
>>   public function set codigo(value:Number):void{_codigo = value}
>>
>>   private var _tipoPapersDTO:TipoPapersDTO;
>>   public function get tipoPapersDTO():TipoPapersDTO{return
>> this._tipoPapersDTO;}
>>   public function set
>> tipoPapersDTO(value:TipoPapersDTO):void{_tipoPapersDTO = value}
>>
>>   private var _ano:int;
>>   public function get ano():Number {return this._ano;}
>>   public function set ano(value:Number):void{_ano = value}
>>
>>   private var _nome:String;
>>   public function get nome():String {return this._nome;}
>>   public function set nome(value:String):void{_nome = value}
>>
>>   private var _autores:String;
>>   public function get autores():String {return this._autores;}
>>   public function set autores(value:String):void{_autores = value}
>>
>>   private var _descricao:String;
>>   public function get descricao():String {return this._descricao;}
>>   public function set descricao(value:String):void{_descricao = value}
>>
>>   private var _arquivo:String;
>>   public function get arquivo():String {return this._arquivo;}
>>   public function set arquivo(value:String):void{_arquivo = value}
>>
>>   private var _usuarioModeradorDTO:UsuarioModeradorDTO;
>>   public function get usuarioModeradorDTO():UsuarioModeradorDTO {return
>> this._usuarioModeradorDTO;}
>>   public function set
>> usuarioModeradorDTO(value:UsuarioModeradorDTO):void{_usuarioModeradorDTO =
>> value}
>>
>>   private var _versao:int;
>>   public function get versao():int {return this._versao;}
>>   public function set versao(value:int):void{_versao = value}
>>   }
>> *********************************
>>
>> public class TipoPapersDTO
>>  {
>>   private var _key:int;
>>   public function get key():Number {return this._key;}
>>   public function set key(value:Number):void{_key = value}
>>
>>   private var _codigo:int;
>>   public function get codigo():Number {return this._codigo;}
>>   public function set codigo(value:Number):void{_codigo = value}
>>
>>   private var _descricao:String;
>>   public function get descricao():String {return this._descricao;}
>>   public function set descricao(value:String):void{_descricao = value}
>>
>>   private var _versao:int;
>>   public function get versao():int {return this._versao;}
>>   public function set versao(value:int):void{_versao = value}
>>
>> }
>>
>> ************************
>>
>> package presenters
>> {
>>
>>  import flash.events.Event;
>>  import flash.events.MouseEvent;
>>  import flash.net.FileFilter;
>>  import flash.net.FileReference;
>>  import flash.utils.ByteArray;
>>
>>  import mx.collections.ArrayCollection;
>>  import mx.controls.Alert;
>>  import mx.events.CloseEvent;
>>  import mx.managers.PopUpManager;
>>  import mx.rpc.events.FaultEvent;
>>  import mx.rpc.events.ResultEvent;
>>
>>  import org.swizframework.controller.AbstractController;
>>  import org.swizframework.events.BeanEvent;
>>
>>  import spark.events.IndexChangeEvent;
>>
>>  [Bindable]
>>  public class PanelNewPapersPresenters extends AbstractController
>>  {
>>   [Inject(twoWay="true")]
>>   public var usuarioModeradorLogado:UsuarioModeradorDTO;
>>
>>   [Inject]
>>   public var panelCarregandoUtils:PanelCarregandoUtils;
>>
>>   [Inject]
>>   public var
>> panelLocalizarPapersPresenters:PanelLocalizarPapersPresenters;
>>   [Inject]
>>   public var papersService:PapersService;
>>
>>   [Inject]
>>   public var uploadArquivoService:UploadArquivoService;
>>   private var refUploadFile:FileReference;
>>
>>   private var UploadFiles:Array;
>>
>>   private var panelNewPapers:PanelNewPapers;
>>
>>   private var dataArquivo:ByteArray;
>>   public var listTiposPapers:ArrayCollection;
>>   public var strAno:String;
>>
>>   public var intIndex:Number;
>>   public var papersDTO:PapersDTO;
>>
>>   public var flagCadastro:Boolean;
>>   /* Construct Events */
>>   public function PanelNewPapersPresenters()
>>   {
>>    UploadFiles = new Array();
>>   }
>>   /*---------------------------------------------------------*/
>>
>>   /* Destroy Events */
>>   [PreDestroy]
>>   public function cleanUpPresenter():void
>>   {
>>    dispatcher.dispatchEvent( new BeanEvent( BeanEvent.TEAR_DOWN_BEAN,
>> this ) );
>>    dispatcher.dispatchEvent( new BeanEvent( BeanEvent.TEAR_DOWN_BEAN,
>> papersService ));
>>    dispatcher.dispatchEvent( new BeanEvent( BeanEvent.TEAR_DOWN_BEAN,
>> uploadArquivoService ));
>>    dispatcher.dispatchEvent( new BeanEvent( BeanEvent.TEAR_DOWN_BEAN,
>> panelCarregandoUtils ));
>>    dispatcher.dispatchEvent( new BeanEvent( BeanEvent.TEAR_DOWN_BEAN,
>> panelLocalizarPapersPresenters));
>>   }
>>   /*---------------------------------------------------------*/
>>
>>   /* Interface Events */
>>   public function eventoAbrirTelaCadastroNewPapers():void
>>   {
>>    panelNewPapers = new PanelNewPapers();
>>
>>    
>> PopUpManager.addPopUp(panelNewPapers,panelCarregandoUtils.ParentPanel,true);
>>    PopUpManager.centerPopUp(panelNewPapers);
>>   }
>>
>>   public function eventoResultListarTiposPapers():void
>>   {
>>    papersDTO = PapersDTO(panelLocalizarPapersPresenters.papersEditado);
>>
>>    if(papersDTO == null)
>>    {
>>     papersDTO = new PapersDTO();
>>    }
>>    else
>>    {
>>     intIndex = papersDTO.tipoPapersDTO.codigo - 1;
>>    }
>>    if(papersDTO.ano > 0)
>>     strAno = papersDTO.ano.toString();
>>
>>    panelCarregandoUtils.eventoFecharMensagemBanco();
>>   }
>>
>>   public function ddlType_changeHandler(event:IndexChangeEvent):void
>>   {
>>    papersDTO.tipoPapersDTO = event.currentTarget.selectedItem;
>>   }
>>
>>   public function btnSend_clickHandler(event:MouseEvent):void
>>   {
>>    if(eventoVerificacaoCamposPrincipais())
>>    {
>>     papersDTO.ano = Number(strAno);
>>
>>     if(flagCadastro)
>>      papersDTO.usuarioModeradorDTO = usuarioModeradorLogado;
>>
>>     papersDTO.arquivo = papersDTO.tipoPapersDTO.descricao + "." +
>>      papersDTO.arquivo.slice(papersDTO.arquivo.length
>> -3,papersDTO.arquivo.length);
>>
>>     panelCarregandoUtils.eventoAbrirMensagemBanco();
>>     eventoInserirPapers();
>>    }
>>    else
>>    {
>>     Alert.show(ConstantesMensagens.ERROR_FILL_ALL_REQUIRED_FIELDS);
>>    }
>>   }
>>
>>   public function eventoFecharTelaCadastroNewPapers(event:CloseEvent):void
>>   {
>>    if(!flagCadastro)
>>     panelLocalizarPapersPresenters.papersEditado.tipoPapersDTO =
>> TipoPapersDTO(papersDTO.tipoPapersDTO);
>>
>>    panelCarregandoUtils.eventoFecharMensagemBanco();
>>    PopUpManager.removePopUp(panelNewPapers);
>>   }
>>
>>   public function addFiles():void
>>   {
>>    var tipos:FileFilter = new FileFilter("File (*.pdf)", "*.pdf");
>>    var tiposArray:Array = new Array(tipos);
>>
>>    this.refUploadFile = new FileReference();
>>
>>    this.refUploadFile.browse(tiposArray);
>>    this.refUploadFile.addEventListener(Event.SELECT, onSelect);
>>    this.refUploadFile.addEventListener(Event.COMPLETE, onUploadComplete);
>>
>>   }
>>
>>   public function eventoInicializar():void
>>   {
>>    panelCarregandoUtils.eventoAbrirMensagemBanco();
>>    eventoListarTiposPapers();
>>    dataArquivo = null;
>>   }
>>
>>   private function onSelect(event:Event):void
>>   {
>>    if((event.currentTarget).size <= 5000000)
>>    {
>>     refUploadFile.load();
>>    }
>>    else
>>    {
>>     Alert.show(ConstantesMensagens.ERROR_FILE_SIZE_MORE_5_MB);
>>    }
>>   }
>>
>>   private function onUploadComplete(event:Event):void
>>   {
>>    refUploadFile = event.currentTarget as FileReference;
>>    dataArquivo = new ByteArray();
>>    refUploadFile.data.readBytes(dataArquivo,0,refUploadFile.data.length);
>>
>>    papersDTO.arquivo = refUploadFile.name;
>>
>>   }
>>
>>   public function eventoVerificacaoCamposPrincipais():Boolean
>>   {
>>    if(strAno == "")
>>    {
>>     return false;
>>    }
>>    else if(papersDTO.autores == "")
>>    {
>>     return false;
>>    }
>>    else if(papersDTO.descricao == "")
>>    {
>>     return false;
>>    }
>>    else if(papersDTO.tipoPapersDTO == null)
>>    {
>>     return false;
>>    }
>>    else if(papersDTO.arquivo == "")
>>    {
>>     return false;
>>    }
>>
>>    return true;
>>   }
>>   /*---------------------------------------------------------*/
>>
>>   /* Dispacther Events */
>>
>>   private function
>> eventoUploadArquivo(pasta:String,data:ByteArray,nome:String):void
>>   {
>>    
>> executeServiceCall(uploadArquivoService.metodoRemotoUploadArquivo(pasta,data,
>> nome),
>>     eventoRetornoControleUploadArquivo,eventoFalhaOperacao);
>>   }
>>
>>   private function eventoInserirPapers():void
>>   {
>>    executeServiceCall(papersService.metodoRemotoInserirNews(papersDTO),
>>     eventoRetornoControleInserirPapers,eventoFalhaOperacao);
>>   }
>>
>>   private function
>> eventoRetornoControleInserirPapers(result:ResultEvent):void
>>   {
>>    var nameFile:String;
>>    papersDTO = PapersDTO(result.result);
>>
>>    if(dataArquivo != null)
>>    {
>>     nameFile = papersDTO.codigo.toString() + "_" + papersDTO.arquivo;
>>
>>
>>     eventoUploadArquivo(ConstantesPastas.FOLDER_PAPERS,dataArquivo,nameFile);
>>    }
>>    else
>>    {
>>     eventoMensagemArquivoCarregado();
>>    }
>>   }
>>
>>   public function eventoListarTiposPapers():void
>>   {
>>    executeServiceCall(papersService.metodoRemotoListaTipoPapers(),
>>     eventoRetornoControleListarTiposPapers,eventoFalhaOperacao);
>>   }
>>
>>   private function
>> eventoRetornoControleListarTiposPapers(result:ResultEvent):void
>>   {
>>    listTiposPapers = ArrayCollection(result.result);
>>    eventoResultListarTiposPapers();
>>   }
>>
>>   private function
>> eventoRetornoControleUploadArquivo(result:ResultEvent):void
>>   {
>>    eventoMensagemArquivoCarregado();
>>   }
>>   /*---------------------------------------------------------*/
>>
>>   /* Errors Events  */
>>   private function eventoFalhaOperacao(event:FaultEvent):void
>>   {
>>    if(event.fault.message.toString().indexOf("Row was updated or
>> deleted") > -1)
>>    {
>>     Alert.show(ConstantesMensagens.ERROR_RECORD_DELETED_UPDATED);
>>    }
>>    else
>>    {
>>     Alert.show(ConstantesMensagens.ERROR_OPERATION_NOT_SUCCESSFUL);
>>    }
>>    trace(event.fault.message.toString());
>>    panelCarregandoUtils.eventoFecharMensagemBanco();
>>   }
>>   /*---------------------------------------------------------*/
>>
>>   /* Response Events */
>>   public function eventoMensagemArquivoCarregado():void
>>   {
>>    eventoMensagemPapersCadastrada();
>>    panelLocalizarPapersPresenters.eventoLocalizarPapers();
>>    eventoFecharTelaCadastroNewPapers(null);
>>   }
>>
>>   public function eventoMensagemPapersCadastrada():void
>>   {
>>    if(papersDTO == null)
>>     Alert.show(ConstantesMensagens.PAPERS_DELETE_SUCESS);
>>    else if(papersDTO.versao == 0)
>>     Alert.show(ConstantesMensagens.PAPERS_ADD_SUCESS);
>>    else
>>     Alert.show(ConstantesMensagens.PAPERS_UPDATE_SUCESS);
>>   }
>>
>>   /*---------------------------------------------------------*/
>>  }
>> }
>>
>> **************************
>> Em 23 de janeiro de 2012 17:35, Re JMD <[email protected]> escreveu:
>>
>> Cara pra tentar te ajudar manda seu codigo java e o flex!
>>>
>>> Em 23 de janeiro de 2012 17:25, Filipe Motta <[email protected]>escreveu:
>>>
>>>  Tbm fica nulo.
>>>> Em 23/01/2012 17:00, "Re JMD" <[email protected]> escreveu:
>>>>
>>>> Debugando o array também fica nulo?
>>>>>
>>>>> Em 23 de janeiro de 2012 15:40, Filipe Motta 
>>>>> <[email protected]>escreveu:
>>>>>
>>>>>> Pessoal
>>>>>> Tenho o seguinte cenario:
>>>>>>
>>>>>> Um objeto PapersDTO que um atributo tipoPapersDTO que é do tipo
>>>>>> TipoPapersDTO. Minha tela tem um combobox que lista todos
>>>>>> tipoPapersDTO cadastrados. Quando atualizo o registro o meu atributo
>>>>>> tipoPapersDTO está nulo. Observei que depois da função de listar todos os
>>>>>> tipoPapersDTO ele anula este atributo. Consegui resolver da de uma 
>>>>>> maneira,
>>>>>> mas tenha certeza que é uma gambiarra, queria saber se alguem sabe o por
>>>>>> que disto.
>>>>>>
>>>>>> Gambiarra para resolver:
>>>>>>
>>>>>> Mudar o tipo do atributo tipoPapersDTO para Object, antes de listar
>>>>>> todos os tipoPapersDTO eu guardo o valor e depois de listar eu atribuo 
>>>>>> este
>>>>>> valor ao atributo.
>>>>>>
>>>>>> Em um outro projeto eu utilizava para comunicação entre o flex o
>>>>>> framework fluorine pois era comunicação com o .net, acontecia o mesmo
>>>>>> problema.
>>>>>>
>>>>>>
>>>>>> att
>>>>>>
>>>>>> --
>>>>>> Luís Filipe Guedes Motta
>>>>>>
>>>>>> --
>>>>>> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
>>>>>> Para enviar uma mensagem, envie um e-mail para
>>>>>> [email protected]
>>>>>> Para sair da lista, envie um email em branco para
>>>>>> [email protected]
>>>>>> Mais opções estão disponíveis em
>>>>>> http://groups.google.com/group/flexdev
>>>>>
>>>>>
>>>>> --
>>>>> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
>>>>> Para enviar uma mensagem, envie um e-mail para
>>>>> [email protected]
>>>>> Para sair da lista, envie um email em branco para
>>>>> [email protected]
>>>>> Mais opções estão disponíveis em
>>>>> http://groups.google.com/group/flexdev
>>>>
>>>>   --
>>>> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
>>>> Para enviar uma mensagem, envie um e-mail para [email protected]
>>>> Para sair da lista, envie um email em branco para
>>>> [email protected]
>>>> Mais opções estão disponíveis em http://groups.google.com/group/flexdev
>>>>
>>>
>>>  --
>>> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
>>> Para enviar uma mensagem, envie um e-mail para [email protected]
>>> Para sair da lista, envie um email em branco para
>>> [email protected]
>>> Mais opções estão disponíveis em http://groups.google.com/group/flexdev
>>>
>>
>>
>>
>> --
>> Luís Filipe Guedes Motta
>> Analista de Sistemas - Java, .Net, Flex, Silverlight e Fortran
>> Consultor de SmartCard - JavaCard
>> (12)3221-4349
>> (12)9735-6735
>>
>>
>>  --
>> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
>> Para enviar uma mensagem, envie um e-mail para [email protected]
>> Para sair da lista, envie um email em branco para
>> [email protected]
>> Mais opções estão disponíveis em http://groups.google.com/group/flexdev
>>
>
>  --
> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
> Para enviar uma mensagem, envie um e-mail para [email protected]
> Para sair da lista, envie um email em branco para
> [email protected]
> Mais opções estão disponíveis em http://groups.google.com/group/flexdev
>



-- 
Luís Filipe Guedes Motta
Analista de Sistemas - Java, .Net, Flex, Silverlight e Fortran
Consultor de SmartCard - JavaCard
(12)3221-4349
(12)9735-6735

-- 
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para [email protected]
Para sair da lista, envie um email em branco para 
[email protected]
Mais opções estão disponíveis em http://groups.google.com/group/flexdev

Responder a