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.
