我正在尝试merge(entity)
使用 eclipselink 执行,并且我想向 eclipse 表明这将是更新还是插入,因此它不必执行初始选择查询。感谢在这个问题上取得的进展,我有以下几点:
UnitOfWorkImpl uow = (UnitOfWorkImpl) ((EntityManagerImpl) em.getDelegate()).getUnitOfWork();
if (dbObj.isInDB())
{
uow.updateObject(dbObj);
}
else
{
uow.insertObject(dbObj);
}
但是,我得到以下信息:
org.eclipse.persistence.exceptions.QueryException:
Exception Description: Objects cannot be written during a UnitOfWork, they must be registered.
Query: UpdateObjectQuery
我以正确的方式接近这个吗?如果是这样,我该如何纠正错误?
谢谢