I have a table with an index automatically populated by a trigger that uses a sequence (Oracle database)
CREATE TABLE A ( IDS NUMBER(10) NOT NULL ) CREATE OR REPLACE TRIGGER A_TRG BEFORE INSERT ON A REFERENCING NEW AS New OLD AS Old FOR EACH ROW BEGIN :new.IDS := A_SEQ.nextval; END A_TRG; /
I have a corresponding Java class:
Class A { @Id @SequenceGenerator(name = "aSequence", sequenceName = "A_SEQ", allocationSize = 1) @GeneratedValue(generator = "aSequence", strategy = GenerationType.SEQUENCE) @Column(name = "IDS") Long id; ... }
When I try to save an instance of A like this:
EntityTransaction transaction = entityManager.getTransaction(); transaction.begin(); A a = new A(); Long id = getHibernateTemplate().save(a); transaction.commit();
I get this problem:
Is there a way to configure Hibernate so that the database trigger creates an identifier?
thanks
source share