Lucky guess! Thanks, Rick
On Feb 20, 2011, at 2:17 AM, Chris Joysn <[email protected]> wrote: > That was a good hint :) > > i was using the OpenJPA Eclipse Plugin to enhance the entities, and it seems > that > this caused the problem. Now i am enhancing using ant and the PCEnhancerTask > and the loading of the @Id column works. > > Thanks, > Chris > > 2011/2/20 Rick Curtis <[email protected]> > >> How are you enhancing your entities? >> >> Thanks, >> Rick >> >> On Feb 19, 2011, at 5:07 PM, Chris Joysn <[email protected]> wrote: >> >>> Hello, >>> >>> when i load an entity the id value is not populated. The entity that was >>> created using the following test code has the id attribute set correct, >>> and i can verify this in the database table too, but when i re-read the >>> entity the id attribute is not populated. >>> >>> -----8<----- >>> em = getEntityManagerFactory().createEntityManager(); >>> >>> EntityTransaction tx = em.getTransaction(); >>> tx.begin(); >>> >>> // insert order >>> >>> Order order = new Order(); >>> order.setStatus("testStatus"); >>> em.persist(order); >>> >>> tx.commit(); >>> >>> // verify if order was inserted correct >>> >>> final String query = "SELECT o FROM Order AS o WHERE o.status = >> ?1"; >>> >>> Query q = em.createQuery(query); >>> q.setParameter(1, "testStatus"); >>> >>> Order orderLoaded = null; >>> orderLoaded = (Order) q.getSingleResult(); >>> em.detach(orderLoaded); >>> >>> assertNotNull(orderLoaded); >>> assertTrue(orderLoaded.getId() > 0); >>> assertEquals(order.getStatus(), orderLoaded.getStatus()); >>> -----8<----- >>> >>> i am using OpenJPA 2.0.1 with MySQL JDBC 5.1.10 and MySQL Server 5.1.49. >>> with the following entity: >>> >>> @Entity >>> @Table(name="orders") >>> public class Order implements Serializable { >>> >>> /** serial for Serializable */ >>> private static final long serialVersionUID = -8061887078955032972L; >>> >>> @Id >>> @GeneratedValue(strategy = GenerationType.IDENTITY) >>> private int id; >>> >>> @Version >>> private int version; >>> >>> @Column(nullable = false, length = 50) >>> private String status; >>> >>> @Column >>> private Date created; >>> >>> ... remaining code skipped ... >>> >>> as i am not able to find a solution via the docs and using the internet, >> can >>> anybody help on why >>> the id column is not populated? >>> >>> Thanks >>
