Is it possible to insert more than one record in to database using the
EntityHome object? I get following error, and not sure how to go around it.
javax.persistence.PersistenceException: org.hibernate.HibernateException:
identifier of an instance of au.edu.tisc.entity.OrgUserActivityLog was altered
from 10001 to 10002
at
org.hibernate.ejb.AbstractEntityManagerImpl.throwPersistenceException(AbstractEntityManagerImpl.java:629)
at
org.hibernate.ejb.AbstractEntityManagerImpl.flush(AbstractEntityManagerImpl.java:299)
In my example, I am trying to insert user activity records in to the table
during the authentication process called from Authenticator.authenticate. If I
insert only one record it works ok; but if I try to insert another I get error
on .persist() call.
@Name("authenticator")
public class Authenticator {
public boolean authenticate() {
@In(value = "activityLogger", required = false, create = true)
private ActivityLogger activityLog;
...
... validate user details ...
...
activityLog.log(...); <--insert first record - works ok
...
...
activityLog.log(...); <--try to insert another - causes error
...
}
}
@Name("activityLogger")
public class ActivityLogger {
public void log(OrgUser orgUser, String action) {
OrgUserActivityLogHome orgUserActivityLogHome =
(OrgUserActivityLogHome) Component.getInstance(OrgUserActivityLogHome.class,
true);
OrgUserActivityLog orgUserActivityLog =
orgUserActivityLogHome.getInstance();
orgUserActivityLog.setId(KeyGenerator.getKey());
orgUserActivityLog.setAction(action);
orgUserActivityLog.setOrganisationUser(orgUser);
orgUserActivityLogHome.persist(); <-- Above error
thrown here on 2nd insert.
}
}
I am not sure why, error occurs on 2nd call; since first record insert had
already called .persist() on the Entity Home object.
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4088693#4088693
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4088693
_______________________________________________
jboss-user mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/jboss-user