João,

Estou realmente surpreso com o erro. Não vejo o motivo para isso.....
Vejo que você está utilizando [RemoteClass] para mapear uma classe JAVA.
Você já verificou, na chegada do command, se sua Collection possui VOs que
vc declarou?. Pergunto isso pois se tiver algum erro na declaração do
[RemoteClass] chegará uma collection de Objects, dando o problema.... Caso
vc esteja declarando certo e mesmo assim esteja vindo Object, verifique se
existe algum link para a sua classe VO, para que o compilador crie uma
referência e assim consiga transformar uma classe JAVA em AS.

Se vc ainda não tentou isso.... vale a pena tentar!

[]s,

Henrique F. Marino






On 2/5/07, João Saleiro <[EMAIL PROTECTED]> wrote:
>
> Encontrei isto no flexcoders:
>
> http://www.mail-archive.com/[email protected]/msg48635.html
>
> tentei usar, e nada...
> Segundo eles, parece que este erro era mesmo um quebra-cabeças.
> Só que para mim, a solução apresentada não funcionou. Amanhã vejo isto. :)
> Obrigado a todos!
>
> João Saleiro
>
> João Saleiro wrote:
>
> Frustrante... também não resultou!
> Desespero... :)
> Valeu a ajuda!
>
> []'s
>
> João Saleiro
>
> Beck Novaes wrote:
>
>
> Olá João,
>
> Você já tentou fazer no CabecalhoGenerico o seguinte:
>
> <mx:Label
> text="{ CabecalhoDeNoticiaVO(data).titulo }"
> fontFamily="Arial"
> fontSize="10"
> color="0xf2890c"
> fontWeight="bold"
> />
>
> []'s
> Beck Novaes
>
>
> On 4 fev, 16:35, João Saleiro <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> wrote:
>
>
>
> Obrigado pela sua disponibilidade Henrique!
>
> Ok, esta é a coisa estranha... Está como bindable...
> Não estou mesmo a encontrar a solução...
>
> O código do meu VO:
>
> package pt.webfuel.onfashion.vo
> {
> import com.adobe.cairngorm.vo.IValueObject;
>
> [Bindable]
> [RemoteClass(alias="pt.webfuel.onfashion.vo.CabecalhoDeNoticiaVO")]
> public class CabecalhoDeNoticiaVO implements IValueObject {
>
> public var id:Number;
> public var data_insercao:Date;
> public var titulo:String;
> public var resumo:String;
> public var foto_destaque:RecursoMultimediaVO;
>
> }
> }
>
> ===========================================
>
> Dentro do Command:
>
> public function result (event: Object) : void
> {
> var result:Object=event.result;
>
> var model:GlobalModelLocator=GlobalModelLocator.getInstance();
>
> var lista: ArrayCollection=new ArrayCollection(result as Array);
> var
> listaDeCabecalhosDeNoticiasEmDestaque:ICollectionView=ICollectionView(lista);model.listaDeCabecalhosDeNoticiasEmDestaque=
> listaDeCabecalhosDeNoticiasEmDestaque;
>
> }
>
> ===========================================
>
> O modelLocator tem Bindable ao nível da classe:
>
> [Bindable]
> public class GlobalModelLocator implements ModelLocator
>
> e o possui a seguinte varíavel pública:
>
> public var listaDeCabecalhosDeDicasEmDestaque: ICollectionView;
>
> ===========================================
> O código que cria o componente que lista as notícias:
>
> <pods:NoticiasEmDestaque
> id="noticiasEmDestaque"
> width="369"
> height="294"
> x="199"
> y="{modeloEmDestaque.y}"
> listaDeNoticias="{model.listaDeCabecalhosDeNoticiasEmDestaque}"
> />
>
> ===========================================
> O componente que lista as notícias possui:
>
> [Bindable]
> public var listaDeNoticias:ICollectionView;
>
> e
>
> <mx:TileList
> x="14"
> y="59"
> width="320"
> height="190"
> dataProvider="{ listaDeNoticias }"
> itemRenderer="pt.webfuel.onfashion.view.ui.CabecalhoGenerico"
> columnWidth="290"
> rowHeight="78"
> backgroundColor="0xFF0000"
> backgroundAlpha="0"
> borderStyle="none"
> rollOverColor="0xf5ebdf"
> selectionColor="0xf5ebdf"
> />
>
> ===========================================
> E para terminar, o CabecalhoGenerico tem o seguinte código:
> <mx:Canvas
> xmlns:mx="http://www.adobe.com/2006/mxml"; <http://www.adobe.com/2006/mxml>
> width="100%"
> height="100%"
> verticalScrollPolicy="off"
> horizontalScrollPolicy="off"
>  >
> <mx:Label
> text="{ data.titulo }"
> fontFamily="Arial"
> fontSize="10"
> color="0xf2890c"
> fontWeight="bold"
> />
> </mx:Canvas>
>
> []'s
>
> João Saleiro
>
> Henrique wrote:
>
>
>
>
> Ok João... finalmente consegui replicar o seu erro.
>
> Verifique que sua Classe (NoticiaVO) esteja declarada como Bindable.
> Se vc fizer isso, o erro não ira mais ocorrer.
>
> []s,
>
> Henrique
>
> ------------------------------------------------------------------------
>
> *From:* [email protected] [mailto:[email protected] 
> <[email protected]>] *On
> Behalf Of *João Saleiro
> *Sent:* domingo, 4 de fevereiro de 2007 17:45
> *To:* [email protected]
> *Subject:* [flexdev] Re: warning: unable to bind to property 'titulo'
> on class 'Object' (class is not an IEventDispatcher)
>
> Yeap, 2.01.
> O erro só me aparece quando corro em modo de debug. Vou tentar
> corrigir esta noite, se não conseguir faço uma descrição bem mais
> exaustiva :)
> Obrigado na mesma pela tentativa! :D
>
> João Saleiro
>
> Henrique wrote:
>
> João,
>
> Tentei replicar o seu erro mais não consegui, de toda forma vc pode sim dar
> um cast na variável data, que no caso representa um item da sua coleção.
>
> []s,
>
> Henrique
>
> Ps. Vc esta usando a versão 2.01?
>
> -----Original Message-----
> From: [email protected] <mailto:[email protected]> 
> <[email protected]> [mailto:[email protected] 
> <[email protected]>] On Behalf
> Of João Saleiro
> Sent: domingo, 4 de fevereiro de 2007 14:00
> To: [email protected] <mailto:[email protected]> 
> <[email protected]>
> Subject: [flexdev] Re: warning: unable to bind to property 'titulo' on class
> 'Object' (class is not an IEventDispatcher)
>
> Desculpe, esqueci de complementar com:
>
> [Bindable]
> public var listaDeNoticias:ICollectionView;
>
> no componente onde uso o TileList (o ListagemDeNoticias).
>
> Em resumo:
>
> 1- a listaDeNoticias é um ICollectionView gerado a partir de um
> ArrayCollection de instâncias de VO's (NoticiaVO);
> 2- a listaDeNoticias "está" no componente que vai fazer a listagem
> (ListagemDeNoticias)
> 3- esse componente possui um Tilelist cujo DataProvider é a listaDeNoticias
> 4- esse TileList utiliza o componente Noticia com itemRenderer
> 5- o componente Noticia possui uma label com text={data.titulo}
> 6- devido a isto é lançado um erro "warning: unable to bind to property
> 'titulo' on class 'Object' (class is not an IEventDispatcher)" em debug
> mode, erro esse que nao estou a conseguir solucionar.
>
> Assim sendo, posso na mesma fazer o cast de data.titulo para o VO
> respectivo (NoticiaVO)?
>
> João Saleiro
>
> Henrique wrote:
>
>
>
> Ola João,
>
> Não sei se entendi bem mais creio que se, no caso da propriedade
> /listaDeNoticias/ , que provavelmente é um ArrayCollection, conter uma
> coleção de uma classe especifica (ClasseEspecifica) ao invés de uma
> coleção de objects, com a classe declarada como Bindable, e vc fizer
> um cast de data - ClasseEspecifica(data). titulo, o erro deve parar de
> ocorrer.
>
> Veja o post do Beck Novaes -
>
>
>
> http://groups.google.com/group/flexdev/browse_thread/thread/3e3560b89...
> /c9a93a7425ad80dc#c9a93a7425ad80dc
>
>
>
> []s
>
> Henrique Marino
>
> ------------------------------------------------------------------------
>
> *From:* [email protected] <mailto:[email protected]> 
> <[email protected]> [mailto:[email protected] 
> <[email protected]>] *On
> Behalf Of *João Saleiro
> *Sent:* domingo, 4 de fevereiro de 2007 12:38
> *To:* [email protected] <mailto:[email protected]> 
> <[email protected]>
> *Subject:* [flexdev] warning: unable to bind to property 'titulo' on
> class 'Object' (class is not an IEventDispatcher)
>
> Olá,
>
> quando corro o meu programa em debug mode estou a obter o seguinte erro:
>
> warning: unable to bind to property 'titulo' on class 'Object' (class
> is not an IEventDispatcher)
>
> O erro acontece com este componente:
>
> <?xml version="1.0" encoding="utf-8"?>
> <mx:VBox
> xmlns:mx="http://www.adobe.com/2006/mxml"; <http://www.adobe.com/2006/mxml> 
> <http://www.adobe.com/2006/mxml> 
> <http://www.adobe.com/2006/mxml><http://www.adobe.com/2006/mxml> 
> <http://www.adobe.com/2006/mxml>
> width="100%"
> height="100%" opaqueBackground="false">
> <mx:Label
> text="{ data.titulo }"
> height="20" />
>
> <mx:Label
> text="safdfadsfad}"
> height="20"
> />
> </mx:VBox>
>
> Que é usado como itemRenderer de um TileList neste trecho de código:
>
> <mx:TileList
> x="17"
> y="62"
> width="310"
> height="150"
> dataProvider="{ listaDeNoticias }"
> itemRenderer="pt.webfuel.onfashion.view.ui.Cabecalho"
> columnWidth="290"
> rowHeight="75"
> backgroundColor="0xFF0000"
> backgroundAlpha="0"
> borderStyle="none"
> />
>
> Presumo que neste caso, os dados ("data") quanto são entregues ao
> componente acima (ui.Cabecalho), possuem o tipo * . Como fico com
> "strict typing" no Cabecalho para a variável data? Simplesmente
> declaro uma variavel pública chamada "data" com o tipo certo no
> componente?
> E isso terá alguma relação com o erro descrito? (warning: unable to
> bind to property 'titulo' on class 'Object' (class is not an
> IEventDispatcher)) Como resolvo este erro?
>
> Obrigado,
>
> João Saleiro
>
>
>
>
>
>
>
> >
>
>

--~--~---------~--~----~------------~-------~--~----~
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