无法从本地AppEngine数据存储中删除Object

时间:2013-03-28 15:14:07

标签: java google-app-engine objectify

您好我正在使用Objectify来管理AppEngine数据存储区。我有以下对象:

public class Config implements Serializable{ @Id Long id ;}

我还有一个使用ofy().get() and ofy().put()

的存储库
public class ConfigRepo extends DAOBase{};

注意:这适用于localhost

我从appengine生成中删除了local_db.bin并清除了memcache。 但是,当我尝试运行时

  

ofy.delete(allKeys)

清除数据存储区我收到错误:

java.lang.IllegalArgumentException: id cannot be zero

java.lang.IllegalArgumentException: Config(no-id-yet) is incomplete.

我的错误是什么?

由于

2 个答案:

答案 0 :(得分:1)

问题解决了。

原来,root / war / WEB-INF / appengine生成了一个local_db.bin,在root / WEB-INF / appengine生成了一个 我不得不从两个位置删除local_db.bin。

感谢。

答案 1 :(得分:0)

问题必须在初始化allKeys的代码中某处,而不是传递正确的实体ID。也许你在实体被持久化并生成id之前生成密钥。如果这没有帮助,请显示您的代码的相关部分!