【发布时间】:2014-06-24 15:40:54
【问题描述】:
我在将实体保存到数据库时遇到以下问题。我使用hibernate和postgresql
java.lang.IllegalStateException: Error occurred while storing entity [chart]. An entity copy [de.enwida.web.model.user.Role#2] was already assigned to a different entity [chart].
at org.hibernate.event.internal.EventCache.put(EventCache.java:192)
at org.hibernate.event.internal.DefaultMergeEventListener.entityIsDetached(DefaultMergeEventListener.java:285)
at org.hibernate.event.internal.DefaultMergeEventListener.onMerge(DefaultMergeEventListener.java:151)
at org.hibernate.internal.SessionImpl.fireMerge(SessionImpl.java:924)
at org.hibernate.internal.SessionImpl.merge(SessionImpl.java:906)
我注意到的是,如果我用插入命令填充 DB,通常代码可以工作 但是当我用 COPY 命令填充它时它不起作用,例如
copy users.groups from '/home/tarazano/Downloads/server/users.groups.csv';
我的代码是这样的
// Modify user's set of groups
final Set<Group> groups = new HashSet<Group>(user.getGroups());
groups.add(group);
user.setGroups(groups);
userDao.update(user, true); // with flush
我认为问题出在复制命令上。当我手动复制表格内容时,没有生成什么?也许索引?
请帮帮我,我已经花了很多时间在这上面
【问题讨论】:
标签: java hibernate postgresql csv