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 <rafaco...@gmail.com> 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 > <paulo...@gmail.com>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 <rfl.vi...@gmail.com> 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 <paulo...@gmail.com> 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 < >>> > davidson.f.si...@gmail.com> 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 < >>> paulo...@gmail.com>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 >>> flexdev@googlegroups.com >>> > >> Para sair da lista, envie um email em branco para >>> > >> flexdev-unsubscr...@googlegroups.com >>> > >> 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 >>> flexdev@googlegroups.com >>> > > Para sair da lista, envie um email em branco para >>> > > flexdev-unsubscr...@googlegroups.com >>> > > 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 flexdev@googlegroups.com >>> Para sair da lista, envie um email em branco para >>> flexdev-unsubscr...@googlegroups.com >>> 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 flexdev@googlegroups.com >> Para sair da lista, envie um email em branco para >> flexdev-unsubscr...@googlegroups.com >> 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 flexdev@googlegroups.com > Para sair da lista, envie um email em branco para > flexdev-unsubscr...@googlegroups.com > 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 flexdev@googlegroups.com Para sair da lista, envie um email em branco para flexdev-unsubscr...@googlegroups.com Mais opções estão disponíveis em http://groups.google.com/group/flexdev