Rafa,

Muito obrigado pelo seu questionamento!!!
Eu disse que estava vindo certo, mas coloquei EAGER no lugar de LAZY e para
minha surpresa funcionou perfeitamente agora.
Não conhecia muito bem a diferença entre eles, agora dei uma pesquisada e vi
que era isso mesmo que faltava.
Muito obrigado mesmo.
Valeu todo mundo pela ajuda pessoal.

Abraços

Em 8 de abril de 2010 17:49, Paulo Kinzkowski Junior
<[email protected]>escreveu:

> Tenho sim, eu uso o flamingo para fazer a integração do flex com o Jboss
> Seam, e o flamingo aceita lazy.
>
> Outra coisa que esqueci de mencionar é que se eu instanciar os objetos
> Equipment e Icon e setalos depois de ter feito a pesquisa eu consigo
> manusiar no flex perfeitamente.
>
> Ex.:
>
>     @SuppressWarnings("unchecked")
>     public List<EquipmentIcon> openEquipmentIcon(Equipment equip) {
>         List<EquipmentIcon> equipmentIcons = (List<EquipmentIcon>)
> entityManager
>                 .createQuery(
>                         "select ei from EquipmentIcon ei where
> ei.equipment.equipmentId = :equipmentId")
>                 .setParameter("equipmentId", equip.getEquipmentId())
>                 .getResultList();
>
>          for (int i = 0; i < equipmentIcons.size(); i++) {
>             Equipment equipment = new Equipment();
>             equipment.setEquipmentId(equipmentIcons.get(i).getEquipment()
>                     .getEquipmentId());
>             equipment.setDescription(equipmentIcons.get(i).getEquipment()
>                     .getDescription());
>             equipment.setCreationDate(equipmentIcons.get(i).getEquipment()
>                     .getCreationDate());
>
> equipment.setLastModifiedDate(equipmentIcons.get(i).getEquipment()
>                     .getLastModifiedDate());
>             equipment.setEquipmentIcons(equipmentIcons);
>             equipmentIcons.get(i).setEquipment(equipment);
>
>             Icon icon = new Icon();
>             icon.setIconId(equipmentIcons.get(i).getIcon().getIconId());
>             icon.setDescription(equipmentIcons.get(i).getIcon()
>                     .getDescription());
>             icon.setStatus(equipmentIcons.get(i).getIcon().getStatus());
>             icon.setEquipmentIcons(equipmentIcons);
>             equipmentIcons.get(i).setIcon(icon);
>         }
>
>         return equipmentIcons;
>     }
>
> Em 8 de abril de 2010 17:42, Rafa Comim <[email protected]> escreveu:
>
> Você tem certeza de q isto está chegando no Flex?!
>> Pq está tudo mapeado como lazy.
>>
>> Em 8 de abril de 2010 17:40, Paulo Kinzkowski Junior 
>> <[email protected]>escreveu:
>>
>>> Nada ainda pessoal!!!
>>>
>>> tentei isso:
>>> var equipment:Equipment =
>>> Equipment(equipmentIcons.getItemAt(i).equipment);
>>>
>>> E não da erro nenhum e continua vindo null.
>>> Verifiquei todas as variaveis da classe e estão com os nomes idênticos.
>>> Outra Idéia?
>>>
>>>
>>> Em 8 de abril de 2010 16:49, RafaelViana <[email protected]> escreveu:
>>>
>>> Uma sugestão de teste:
>>>>
>>>> Verifique o nome das variaveis, inclusive diferenciação entre
>>>> maiusculas/minusculas.
>>>> Se estiver com algum caractere diferente o Java não conseguirá
>>>> enxergar esse campo no Flex e vice-versa.Como consequencia o campo
>>>> fica nulo.
>>>>
>>>>
>>>>
>>>> On 8 abr, 16:13, Paulo Kinzkowski Junior <[email protected]> wrote:
>>>> > Davidson,
>>>> >
>>>> > Valeu pela força ai, mas não é isso.
>>>> > Tentei e continua a mesma coisa.
>>>> > Mas alguma outra idéia?
>>>> >
>>>> > Em 8 de abril de 2010 15:32, デビデソヌ Davidson Silva <
>>>> > [email protected]> escreveu:
>>>> >
>>>> >
>>>> >
>>>> > > Você não esqueceu de colocar qual é a classe que receberá os dados
>>>> > > ...(targetEntity = XPTO.class)
>>>> > > Pode ser isso ....
>>>> >
>>>> > > @ManyToOne(fetch = FetchType.LAZY, targetEntity = Equipment.class)
>>>> >
>>>> > > Em 8 de abril de 2010 14:37, Paulo Kinzkowski Junior <
>>>> [email protected]>escreveu:
>>>> >
>>>> > >> É verdade, imaginei que iria ficar difícil mesmo..... rsrsrsr
>>>> > >> Então abaixo está somente a parte que interessa do meu código:
>>>> >
>>>> > >> EquipmentIcon.java
>>>> > >> public class EquipmentIcon implements Serializable {
>>>> >
>>>> > >>     private Icon icon;
>>>> > >>     private Equipment equipment;
>>>> >
>>>> > >>     @ManyToOne(fetch = FetchType.LAZY)
>>>> > >>     @JoinColumn(name = "icon_id", nullable = false)
>>>> > >>     @NotNull
>>>> > >>     public Icon getIcon() {
>>>> > >>         return this.icon;
>>>> > >>     }
>>>> >
>>>> > >>     public void setIcon(Icon icon) {
>>>> > >>         this.icon = icon;
>>>> > >>     }
>>>> >
>>>> > >>     @ManyToOne(fetch = FetchType.LAZY)
>>>> > >>     @JoinColumn(name = "equipment_id", nullable = false)
>>>> > >>     @NotNull
>>>> > >>     public Equipment getEquipment() {
>>>> > >>         return this.equipment;
>>>> > >>     }
>>>> > >> }
>>>> >
>>>> > >> Equipment.java
>>>> > >> public class Equipment implements Serializable {
>>>> >
>>>> > >>     private List<EquipmentIcon> equipmentIcons = new
>>>> > >> ArrayList<EquipmentIcon>();
>>>> >
>>>> > >>     @OneToMany(fetch = FetchType.LAZY, mappedBy = "equipment",
>>>> cascade = {
>>>> > >>             CascadeType.PERSIST, CascadeType.MERGE })
>>>> > >>     @Cascade( { org.hibernate.annotations.CascadeType.SAVE_UPDATE,
>>>> > >>             org.hibernate.annotations.CascadeType.DELETE_ORPHAN })
>>>> > >>     public List<EquipmentIcon> getEquipmentIcons() {
>>>> > >>         return this.equipmentIcons;
>>>> > >>     }
>>>> >
>>>> > >>     public void setEquipmentIcons(List<EquipmentIcon>
>>>> equipmentIcons) {
>>>> > >>         this.equipmentIcons = equipmentIcons;
>>>> > >>     }
>>>> > >> }
>>>> >
>>>> > >> Icon.java
>>>> > >> public class Icon implements Serializable {
>>>> >
>>>> > >>     private List<EquipmentIcon> equipmentIcons = new
>>>> > >> ArrayList<EquipmentIcon>();
>>>> >
>>>> > >>     @OneToMany(fetch = FetchType.LAZY, mappedBy = "icon", cascade =
>>>> {
>>>> > >>             CascadeType.PERSIST, CascadeType.MERGE })
>>>> > >>     @Cascade( { org.hibernate.annotations.CascadeType.SAVE_UPDATE,
>>>> > >>             org.hibernate.annotations.CascadeType.DELETE_ORPHAN })
>>>> > >>     public List<EquipmentIcon> getEquipmentIcons() {
>>>> > >>         return this.equipmentIcons;
>>>> > >>     }
>>>> >
>>>> > >>     public void setEquipmentIcons(List<EquipmentIcon>
>>>> equipmentIcons) {
>>>> > >>         this.equipmentIcons = equipmentIcons;
>>>> > >>     }
>>>> > >> }
>>>> >
>>>> > >> EquipmentService.java
>>>> > >> public class EquipmentService implements Serializable {
>>>> >
>>>> > >>     @In
>>>> > >>     private EntityManager entityManager;
>>>> >
>>>> > >>     @SuppressWarnings("unchecked")
>>>> > >>     public List<EquipmentIcon> openEquipmentIcon(Equipment equip) {
>>>> > >>         List<EquipmentIcon> equipmentIcons = (List<EquipmentIcon>)
>>>> > >> entityManager
>>>> > >>                 .createQuery(
>>>> > >>                         "select ei from EquipmentIcon ei where
>>>> > >> ei.equipment.equipmentId = :equipmentId")
>>>> > >>                 .setParameter("equipmentId",
>>>> equip.getEquipmentId())
>>>> > >>                 .getResultList();
>>>> >
>>>> > >>         return equipmentIcons;
>>>> > >>     }
>>>> > >> }
>>>> >
>>>> > >> EquipmentIcon.as
>>>> > >> package {
>>>> >
>>>> > >>     [Bindable]
>>>> > >>     [RemoteClass(alias="meuPacote.EquipmentIcon")]
>>>> > >>     public class EquipmentIcon {
>>>> > >>         public var equipment:Equipment;
>>>> > >>         public var icon:Icon;
>>>> >
>>>> > >>         public function EquipmentIcon() {
>>>> >
>>>> > >>         }
>>>> > >>     }
>>>> > >> }
>>>> >
>>>> > >> Equipment.as
>>>> > >> package {
>>>> > >>     import mx.collections.ArrayCollection;
>>>> >
>>>> > >>     [Bindable]
>>>> > >>     [RemoteClass(alias="meuPacote.Equipment")]
>>>> > >>     public class Equipment {
>>>> > >>         public var equipmentIcons:ArrayCollection;
>>>> >
>>>> > >>         public function Equipment() {
>>>> >
>>>> > >>         }
>>>> > >>     }
>>>> > >> }
>>>> >
>>>> > >> Icon.as
>>>> > >> package {
>>>> > >>     import mx.collections.ArrayCollection;
>>>> >
>>>> > >>     [Bindable]
>>>> > >>     [RemoteClass(alias="meuPacote.Icon")]
>>>> > >>     public class Icon {
>>>> > >>         public var equipmentIcons:ArrayCollection;
>>>> >
>>>> > >>         public function Icon() {
>>>> >
>>>> > >>         }
>>>> > >>     }
>>>> > >> }
>>>> >
>>>> > >> Depois que eu faço a busca eu consigo acessar a lista de objetos
>>>> > >> equipmentIcon e os objetos filhos no Java perfeitamente.
>>>> > >> Quando eu tento acessar a lista de objetos equipmentIcon no Flex eu
>>>> > >> consigo, mas os objetos filhos não, os objetos vem como null.
>>>> >
>>>> > >> Ex.:
>>>> > >> private function successOpenEquipmentIcon(event:ResultEvent):void {
>>>> > >>     var equipmentIcons:EquipmentIcon = event.result as
>>>> ArrayCollection;
>>>> > >>     var equipment:Equipment = equipmentIcons.getItemAt(i).equipment
>>>> as
>>>> > >> Equipment;
>>>> > >>     var icon:Icon = equipmentIcons.getItemAt(i).icon as Icon;
>>>> > >>     Alert.show("EquipmentIcon = " + equipmentIcons); // retorna
>>>> > >> "EquipmentIcon = [object EquipmentIcon]"
>>>> > >>     Alert.show("Equipment = " + equipment); // retorna "Equipment
>>>> null"
>>>> > >>     Alert.show("Icon = " + icon); // retorna "Icon null"
>>>> > >> }
>>>> >
>>>> > >> Alguém já passou por isso?
>>>> >
>>>> > >>  --
>>>> > >> 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 emhttp://
>>>> 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 emhttp://
>>>> 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
>>>>
>>>> To unsubscribe, reply using "remove me" as the subject.
>>>>
>>>
>>>  --
>>> 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
>>>
>>
>>
>>
>> --
>> ______________________
>>
>> Atenciosamente,
>>
>> Rafael Comim
>>
>> --
>> 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

Responder a