• Post Reply Bookmark Topic Watch Topic
  • New Topic

JPA/Hibernate: @GeneratedValue doesnt work  RSS feed

Martin Dames
Posts: 3
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

Im running into a simple issue and can not find the solution?!

I have an entity object with a technical id as primary key "BaseEntity" (its actual a superclass entity which provides the technical key for each sub-entity. Im using a Generic DAO pattern.

My Testcode looks like:

So, Person extends the BaseEntity above.

The persist() method throws the following exception:

Exception in thread "main" javax.persistence.PersistenceException: org.hibernate.exception.ConstraintViolationException: could not insert: [birthday.entities.Person]
at org.hibernate.ejb.AbstractEntityManagerImpl.throwPersistenceException(AbstractEntityManagerImpl.java:614)
at org.hibernate.ejb.AbstractEntityManagerImpl.persist(AbstractEntityManagerImpl.java:226)
at birthday.dao.jpa.JpaDAO.persist(JpaDAO.java:40)
at birthday.dao.jpa.JpaDAO.persist(JpaDAO.java:1)
at birthday.test.TestDAO.main(TestDAO.java:38)

Caused by: java.sql.SQLIntegrityConstraintViolationException: Column 'OBJECTID' cannot accept a NULL value.
at org.apache.derby.impl.jdbc.SQLExceptionFactory40.getSQLException(Unknown Source)
at org.apache.derby.impl.jdbc.Util.generateCsSQLException(Unknown Source)
at org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(Unknown Source)

So, this should not happen since the id has to be generated through hibernate/Derby.... since I used the @ID @GeneratedValue combination at the BaseEntity.

With EclipseLink as JPA Provider this works very well.... has anyone an idea what the problem is?

Thank you guys!

With a little knowledge, a cast iron skillet is non-stick and lasts a lifetime.
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!