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

Reply via email to