当我尝试在一个事务中更新多个对象时,我收到以下异常:
java.lang.IllegalArgumentException:无法在单个transaction.found中对多个实体组进行操作。 类型:“消息” id:51 } 和元素{ 类型:“消息” id:52 }
这很奇怪,因为事务中的所有对象都共享一个共同的祖先。
当我打印列表时,我会收到以下内容:
[ 网站ID:2消息ID:50消息创建者:north@gmail.com创建于:2012年5月4日星期五05:38:32 UTC 2012, 网站ID:2消息ID:51消息创建者:north@gmail.com创建于:2012年5月4日星期五05:38:32 UTC 2012, 网站ID:2消息ID:52消息创建者:north@gmail.com创建日期:星期五5月4日05:38:32 UTC 2012 ]
正如您所看到的,所有三条消息记录都查找到ID为2的同一父站点。根据GAE documentation,这意味着消息在同一个实体组中,所以看起来我不应该得到这个例外。
非常感谢任何帮助。
答案 0 :(得分:0)
尝试更新一个项目时,我遇到了同样的错误。解决方法 - 我将其移至不同的交易。认为不可能在单个事务中更新多一个项目。