Complicado heim.
coloca aí pra gente o momento que vc popula a Classe DomainEntity no
Java e o Result do Serviço no Flex.
Acredito ser algum detalhe que esteja passando despercebido.



On 10 set, 18:30, Leonardo Ribeiro <[email protected]> wrote:
> Rodrigo,
>
> Estou inicializando agora depois de ler seu e-mail, mas no caso agora
> carrega com valor 0 (zero) e nao o que esta na base.
> Rapaz, nao sei no que estou errando e nao to conseguindo de forma alguma
> corrigir isso para seguir com o desenvolvimento.
>
> Segue abaixo a estrutura de classes que tenho
>
> Classes Java
>
> ps: interface IDomainEntity so implementa Serializable (nao tem codigo
> algum)
>
> @Entity
> @Inheritance(strategy = InheritanceType.TABLE_PER_CLASS)
> public abstract class DomainEntity implements IDomainEntity {
>
>     private static final long serialVersionUID = 1L;
>
>     @Id
>     @Column(name = "id")
>     protected Long id;
>
>     @Transient
>     private boolean completo = true;
>
>     public DomainEntity() {
>         this.id = DomainEntityIdFactory.makeObjectId();
>     }
>
>     public Long getId() {
>         return id;
>     }
>
>     public boolean isCompleto() {
>         return completo;
>     }
>
>     public void setCompleto(boolean completo) {
>         this.completo = completo;
>     }
>
> }
>
> public class Curso extends DomainEntity {
>
>     private static final long serialVersionUID = 1L;
>
>     @Column(name = "codigo", nullable = false, unique = true)
>     private String codigo;
>
>     @Column(name = "nome", nullable = false, length = 50, unique = true)
>     private String nome;
>
>     @Transient
>     private List<CursoDisciplina> disciplinas = new
> ArrayList<CursoDisciplina>();
>
>     public Curso() {}
>
>     public String getCodigo() {
>         return codigo;
>     }
>
>     public void setCodigo(String codigo) {
>         this.codigo = codigo;
>     }
>
>     public String getNome() {
>         return nome;
>     }
>
>     public void setNome(String nome) {
>         this.nome = nome;
>     }
>
>     public void setDisciplinas(final List<CursoDisciplina> disciplinas) {
>         this.disciplinas = disciplinas;
>     }
>
>     public CursoDisciplina getDisciplina(final int idx) {
>         if (idx < 0 || disciplinas.isEmpty() || idx > disciplinas.size() -
> 1) return null;
>         return disciplinas.get(idx);
>     }
>
> }
>
> Classes AS
>
>     [RemoteClass(alias="fae.engsoft.diario.model.entities.DomainEntity")]
>
>     [Bindable]
>     public class DomainEntity
>     {
>         public var id:Number = new Number;
>         public var completo:Boolean = true;
>
>         public function DomainEntity(){}
>     }
>
>     [RemoteClass(alias="fae.engsoft.diario.model.entities.Curso")]
>     [Bindable]
>     public class Curso extends DomainEntity
>     {
>         public var codigo:String = new String;
>         public var nome:String = new String;
>         public var disciplinas:ArrayCollection = new ArrayCollection;
>
>         public function Curso(){
>             super();
>         }
>     }
>
> No As que contem os metodos da tela de listagem (que tem um DataGrid)
>
> [Bindable]
> private var listCursos:ArrayCollection;
>
> public function onResultGetCursos(event:ResultEvent):void    {
>     listCursos = event.result as ArrayCollection;
>     var i:int;
>     for (i = 0; i < listCursos.length; i++) {
>         Alert.show("ID = " + (listCursos.getItemAt(i) as Curso).id); //Aqui
> eu vejo que os "id" estao zerados (0)
>     }
>
> }
>
> Para gravacao esta tudo OK. Os id's como pode ser visto no contrutor de
> DomainEntity é criado pela aplicacao
> é um Long, na gravacao ocorre a criacao e comita ok agora no select do
> servidor (java) carrega OK mas no cliente
> (As) chega sem esse valor. ( se eu nao inicializo, como estava antes vem
> NaN, se inicializo como vc disse vem 0 (zero))
>
> Qualquer ajuda é muito bem vinda.
>
> 2009/9/10 Rodrigo M. Rodrigues <[email protected]>
>
>
>
>
>
> > "The default value of a variable typed as Number is NaN (Not a
> > Number)."
>
> >http://livedocs.adobe.com/flex/3/langref/index.html?Number.html&class...
>
> > On 10 set, 08:29, "Rodrigo M. Rodrigues" <[email protected]> wrote:
> > > Sempre inicie os tipos Number no AS.
> > > private var _num_conta_corrente:Number=0;
> > > ||
> > > private var _num_conta_corrente:Number=New Number();
>
> > > On 9 set, 17:28, Leonardo Ribeiro <[email protected]> wrote:
>
> > > > Os gettres e setters estao corretos e "public". (nas classes java). Na
> > > > Classe AS nao tenho os getters e setters
>
> > > > 2009/9/9 Mário Júnior <[email protected]>
>
> > > > > o getter está certinho? Esse é outro erro comum:
>
> > > > > puglic Long getCodigo()  <-- CERTO.
>
> > > > > public Long ge*tc*odigo()  <--* Errado. *
>
> > > > > Não está "errado" sintaticamente, pq para o Java esse método pode
> > existir
> > > > > mas não é um "getter" propriamente válido. O BlazeDS utiliza reflexao
> > para
> > > > > acessar os atributos portanto é essencial q esteja escrito da maneira
> > certa
> > > > > "getCodigo" com "C" maiusculo.
>
> > > > > Outra coisa é ficar atento a visibilidade do getter, tem q ser
> > public.
>
> > > > > (uma vez eu mandava o eclipse gerar meus getters/setters e nao
> > prestava
> > > > > atenção q estavam sendo gerados como protected, e perdi um tempão
> > para
> > > > > prestar atenção nisso... bellow! hahahah)
>
> > > > > abraços.
>
> > > > > 2009/9/9 Leonardo Ribeiro <[email protected]>
>
> > > > >> Sim estao identicos, a diferenca é o tipo de dado que na classe java
> > é
> > > > >> Long e na AS é Number
> > > > >> Classe Java
>
> > > > >> @Entity
> > > > >> @Table(name="xyz")
> > > > >> @Inheritance(strategy = InheritanceType.TABLE_PER_CLASS)
> > > > >> public class Xyz implements Serializable {
>
> > > > >>    private static final long serialVersionUID = 1L;
>
> > > > >>   �...@id
> > > > >>   �...@column(name = "codigo", nullable = false, unique = true)
> > > > >>    private Long codigo;
>
> > > > >>   �...@column(name = "nome", nullable = false, length = 50, unique =
> > true)
> > > > >>    private String nome;
>
> > > > >> Classe AS
>
> > > > >> [RemoteClass(alias="caminho.package.entities.Xyz")]
> > > > >>    [Bindable]
> > > > >>    public class Xyz
> > > > >>    {
> > > > >>       public var codigo:Number;
> > > > >>       public var nome:String;
>
> > > > >>       public function Xyz()
>
> > > > >>    }
>
> > > > >> Qualquer ajuda é bem vinda.. nao consigo resolver isso e o
> > desenvolvimento
> > > > >> parou.
>
> > > > >> Att
>
> > > > >> 2009/9/9 Diego Martinez Salvanha <[email protected]>
>
> > > > >>> verifique se os Atributos da Classe Java estão idênticos na Classe
> > AS!
>
> > > > >>> parece bobo.. mas é um erro comum...
>
> > > > >>> espero ter ajudado !
>
> > > > >>> 2009/9/9 Leonardo Ribeiro <[email protected]>:
> > > > >>> > Pessoal,
>
> > > > >>> > Tenho uma aplicacao simples com Java+Hibernate+Flex+Spring.
>
> > > > >>> > Tenho uma classe simples em java com "codigo" e "nome" sendo
> > codigo o
> > > > >>> @Id,
> > > > >>> > gravacao ocorre perfeitamente mas quando eu faço um select eu
> > vejo que
> > > > >>> a
> > > > >>> > classe java foi carregada perfeitamente com "codigo" e "nome"
> > porem na
> > > > >>> minha
> > > > >>> > classe correspondente em actionScrip que esta "Bindable" com a
> > classe
> > > > >>> java
> > > > >>> > so carrega "nome" e o "codigo" fica NaN.
>
> > > > >>> > Uso o BlazeDS
>
> > > > >>> > Alguem sabe o motivo de ocorrer isso?
>
> > > > >>> > --
> > > > >>> > []'s
> > > > >>> > Leonardo
>
> > > > >>> > Linux User #488650
> > > > >>> > Ubuntu User #27045
> > > > >>> > Mais sobre o Ubuntu em português:http://www.ubuntu-br.org/comece
>
> > > > >>> --
>
> > --------------------------------------------------------------------
> > > > >>> Diego M Salvanha
>
> > > > >>> msn : [email protected]
> > > > >>> 18 8801 4874
>
> > > > >>> P Antes de imprimir, pense no AQUECIMENTO GLOBAL.
>
> > > > >> --
> > > > >> []'s
> > > > >> Leonardo
>
> > > > >> Linux User #488650
> > > > >> Ubuntu User #27045
> > > > >> Mais sobre o Ubuntu em português:http://www.ubuntu-br.org/comece
>
> > > > > --
> > > > > Mario Junior
> > > > > Enterprise Java / Flex Architectures
> > > > > Adobe Certified Expert Flex 3 with AIR
>
> > > > > Sofshore Informática
> > > > >http://www.sofshore.com.br
> > > > > +55 (48) 3337 2003
> > > > > Rua Pastor Willian Richard Schisler Filho 452 sl 102, 88034-100
> > Itacorubi
> > > > > Florianopolis SC Brasil
>
> > > > --
> > > > []'s
> > > > Leonardo
>
> > > > Linux User #488650
> > > > Ubuntu User #27045
> > > > Mais sobre o Ubuntu em português:http://www.ubuntu-br.org/comece
>
> --
> []'s
> Leonardo
>
> Linux User #488650
> Ubuntu User #27045
> Mais sobre o Ubuntu em português:http://www.ubuntu-br.org/comece
--~--~---------~--~----~------------~-------~--~----~
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