I wondered why there are examples of session persistence and separate examples of TaskServer but none I can find of both of them together.
I'm still trying to make them work together and it's still problematic. I start the taskServer with
<persistence-unit name="org.drools.task"> then, in main, I create
<persistence-unit name="org.drools.persistence.jpa" transaction-type="JTA"> with a fully qualified classname for
org.jbpm.persistence.processinstance.ProcessInstanceInfo
But when I start the process
Hibernate: insert into PeopleAssignments_BAs (task_id, entity_id) values (?, ?)
Hibernate: insert into PeopleAssignments_PotOwners (task_id, entity_id) values (?, ?)
0 12/08 12:40:18,491[NioProcessor-1] ERROR hibernate.util.JDBCExceptionReporter.logExceptions - Referential integrity constraint violation: "FK1EE418D2C122ED2: PUBLIC.PEOPLEASSIGNMENTS_POTOWNERS FOREIGN KEY(ENTITY_ID) REFERENCES PUBLIC.ORGANIZATIONALENTITY(ID)"; SQL statement:
insert into PeopleAssignments_PotOwners (task_id, entity_id) values (?, ?) [23002-128]
5 12/08 12:40:18,496[NioProcessor-1] ERROR hibernate.util.JDBCExceptionReporter.logExceptions - Referential integrity constraint violation: "FK1EE418D2C122ED2: PUBLIC.PEOPLEASSIGNMENTS_POTOWNERS FOREIGN KEY(ENTITY_ID) REFERENCES PUBLIC.ORGANIZATIONALENTITY(ID)"; SQL statement:
insert into PeopleAssignments_PotOwners (task_id, entity_id) values (?, ?) [23002-128]
Hibernate: update ProcessInstanceInfo set lastModificationDate=?, lastReadDate=?, processId=?, processInstanceByteArray=?, startDate=?, state=?, OPTLOCK=? where InstanceId=? and OPTLOCK=?
13 12/08 12:40:18,504[NioProcessor-1] ERROR event.def.AbstractFlushingEventListener.performExecutions - Could not synchronize database state with session
org.hibernate.exception.ConstraintViolationException: Could not execute JDBC batch update