Dmitry,
Can you please provide more details? What does it mean "on the 'B-object-place'
i see object with all fields = null"? What fields does your Grade object have?
Is VersionControl also an entity or a MappedSuperClass?
The restart that you perform cleans up the in-memory cache of the objects
accessed by this PU before. Do you have any ideas/clues what could've caused
this instance to have all fields null in memory?
thanks,
-marina
Dmitry Mozheyko wrote:
>
> -----Original Message-----
> From: "Gordon Yorke" <gordon.yorke_at_oracle.com>
> To: "mozheyko_d_at_mail.ru" <mozheyko_d_at_mail.ru>
> Date: Fri, 26 May 2006 09:04:07 -0400
> Subject: RE: Empty references object
>
>
>>Hello Dmitry,
>> Can you send the code that performs the update? Can you provide the source for the Grade class as well? How are the PK's structured?
>
>
> ####### Code for update grade of Pupil #############
> ...
> Long gradePK = new Long(<some received value>);
> Grade grade = em.find(Grade.class, gradePK);
> pupil.setGrade(grade);
> em.persist(pupil);
> ...
>
> ############ PK of Grade entity is enherited from parent class
>
> ...
> @Entity
> @Inheritance(strategy=InheritanceType.JOINED)
> public class MyEntityParent implements java.io.Serializable {
>
> @Id
> @GeneratedValue(strategy = GenerationType.AUTO)
> private Long id;
> ...
>
> @Entity
> public class Grade extends VersionControl {
> ...
>
>
>
>>--Gordon
>>
>>-----Original Message-----
>>From: Dmitry Mozheyko [mailto:mozheyko_d_at_mail.ru]
>>Sent: Friday, May 26, 2006 4:09 AM
>>To: persistence_at_glassfish.dev.java.net
>>Subject: Empty references object
>>
>>
>>I use glassfish b48.
>>I need two classes with unidirectional ManyToOne relation:
>>
>>Pupil -> Grade
>>
>>###### Pupil.java ########
>>...
>>@Entity
>>public class Pupil extends Person {
>> ...
>> @ManyToOne(targetEntity=Grade.class)
>> private Grade grade;
>> ...
>>}
>>
>>When i change Pupil-instance grade attribute from 'A' to 'B' grade attribute in pupil instance, database updates successfully, but grade attribute of Pupil instance contents Grade-class instance with all NULL fields, and
>>em.createQuery("select o from Grade o where order by o.name").getResultList();
>>returns Collection with all Grade objects, but on the 'B-object-place' i see object with all fields = null.
>>i.e.
>>
>>#########################
>>id name
>> "1" "A"
>> "" ""
>> "3" "C"
>>##########################
>>
>>I tried to run on various platforms and glassfish versions, on JavaDB and PostgreSQL database, various CascadeType's - same result.
>>
>>When i redeploy my application(or restart server;-)) all is ok.
>>
>>When is my problem?
>>