używam hibernacji z JPA i mieć związek, który wygląda tak:JPA/Hibernate proxy nie pobierania danych rzeczywistych obiektów, ustawia wszystkie właściwości null
public class PencilImpl implements Pencil {
@ManyToOne(targetEntity = PersonImpl.class, fetch = FetchType.LAZY)
@JoinColumn(name = "owner", nullable = false)
private Person owner;
...
@Override
public final Person getOwner() {
return owner;
}
}
Odkąd zacząłem używać leniwy pobrać typ, za każdym razem, gdy próbuję zdobyć właściciela ołówka (pencil.getOwner) Otrzymuję obiekt niezerowy, który ma wszystkie wewnętrzne właściwości ustawione na wartość null.
Wygląda na to, że proxy utworzone przez Hibernate nie pobiera rzeczywistego obiektu z bazy danych, kiedy powinien.
Wszelkie pomysły? Dzięki :)
Czy wywołujesz gettery i otrzymujesz wartość null? A może sprawdzasz obiekt w debugerze? W pierwszym przypadku spróbuj usunąć ostateczny modyfikator w swoich procesach. Jeśli to drugie, spróbuj wywoływać gettery. –
Zobacz także http://blog.bolkey.com/2009/05/hibernate-datanucleus-r1/ – DataNucleus