Rick,

I installed OpenJPA eclipse tooling on Eclipse 3.6... I think it's the 
reason.

my environment:
Eclipse:
Version: 3.6.0.v20100602-9gF78GpqFt6trOGhL60z0oEx3fz-JKNwxPY
Build id: I20100608-0911
Then I installed plug-in from 
http://openjpa.apache.org/openjpaeclipseinstallation.html and I used the 
tool for enhancement.

Best regards,
Alex,Huang

----- Original Message ----- 
From: "Rick Curtis" <[email protected]>
To: <[email protected]>
Sent: Saturday, November 06, 2010 2:43 AM
Subject: Re: Can't obtain Primary Key value by JPQL


> Can you point me to how you were enhancing your Entities... I'd like to 
> get
> to the bottom of this one.
>
> Thanks,
> Rick
>
> On Fri, Nov 5, 2010 at 12:18 AM, Alex, Huang <[email protected]> wrote:
>
>> Hi Rick,
>>
>> I got the reason. I always enhance entities by Eclipse plug-in.  After 
>> got
>> your clue, I enhanced entities again by using command. And the problem
>> disappeared.
>>
>> Really thank you for all the help.
>> Alex, Huang
>>
>> ----- Original Message -----
>> From: "Rick Curtis" <[email protected]>
>> To: <[email protected]>
>> Sent: Friday, November 05, 2010 1:20 AM
>> Subject: Re: Can't obtain Primary Key value by JPQL
>>
>>
>> > How are you enhancing your Entities? If you are using build time, can 
>> > you
>> > post the enhanced .class file?
>> >
>> > Thanks,
>> > Rick
>> >
>> > On Wed, Nov 3, 2010 at 8:32 PM, Alex, Huang <[email protected]>
>> wrote:
>> >
>> >> Hi Rick,
>> >>
>> >> >How did you get the data into your DB?
>> >> I  insert data at mysql prompt.
>> >> ================================================
>> >> mysql> INSERT INTO t_user(name,age) VALUES ('John', 26);
>> >> Query OK, 1 row affected (0.03 sec)
>> >> ================================================
>> >>
>> >> Now,db's data like below,
>> >> ================================================
>> >> mysql> select * from t_user;
>> >> +-----+--------+-----+
>> >> | uid | name   | age |
>> >> +-----+--------+-----+
>> >> |   1 | Huang  |  26 |
>> >> |   2 | Alex   |  28 |
>> >> |   3 | tester |  22 |
>> >> |   4 | John   |  26 |
>> >> +-----+--------+-----+
>> >> 4 rows in set (0.00 sec)
>> >> ================================================
>> >>
>> >> >What happens if you call em.find(TUser.class, [known_id]) ?
>> >>
>> >> I run the following case, and it completed successful.
>> >> ================================================
>> >>  public void testFind(){
>> >>  EntityManager em = emf.createEntityManager();
>> >>  em.getTransaction().begin();
>> >>   TUser user  = em.find(TUser.class, 2);
>> >>  assertEquals("Alex", user.getName());
>> >>  assertEquals(28, user.getAge());
>> >>  }
>> >> ================================================
>> >>
>> >> After  I added "assertEquals(2,user.getUid());", AssertionFailedError
>> >> occured.
>> >> ================================================
>> >> junit.framework.AssertionFailedError: expected:<2> but was:<0>
>> >> ================================================
>> >>
>> >> >Could you try creating some data and persisting it via JPA?
>> >> OK.I added a method to test case.
>> >> ==========================================
>> >>  public void testInsert(){
>> >>   EntityManager em = emf.createEntityManager();
>> >>  em.getTransaction().begin();
>> >>   TUser user = new TUser();
>> >>  user.setName("Jeason");
>> >>  user.setAge(27);
>> >>  em.persist(user);
>> >>  em.getTransaction().commit();
>> >>  em.close();
>> >>  }
>> >> ==========================================
>> >>
>> >> I run the test case and it completed successful. At mysql prompt I
>> >> confirmed
>> >> the data has been created.
>> >>
>> >> ==========================================
>> >> mysql> select * from t_user;
>> >> +-----+--------+-----+
>> >> | uid | name   | age |
>> >> +-----+--------+-----+
>> >> |   1 | Huang  |  26 |
>> >> |   2 | Alex   |  28 |
>> >> |   3 | tester |  22 |
>> >> |   4 | John   |  26 |
>> >> |   5 | Jeason |  27 |
>> >> +-----+--------+-----+
>> >> 5 rows in set (0.00 sec)
>> >> ==========================================
>> >>
>> >> Look forward to your advance.
>> >> Alex,Huang
>> >> ----- Original Message -----
>> >> From: "Rick Curtis" <[email protected]>
>> >> To: <[email protected]>
>> >> Sent: Thursday, November 04, 2010 5:29 AM
>> >> Subject: Re: Can't obtain Primary Key value by JPQL
>> >>
>> >>
>> >> > That looks about identical to the test case that I came up with.
>> >> >
>> >> >> Any advice?
>> >> > I'm running low on ideas here...  How did you get the data into your
>> >> > DB?
>> >> > What happens if you call em.find(TUser.class, [known_id]) ? Could 
>> >> > you
>> >> > try
>> >> > creating some data and persisting it via JPA?
>> >> >
>> >> > Thanks,
>> >> > Rick
>> >> >
>> >>
>> >>
>> >>
>> >
>>
>>
>>
> 


Reply via email to