google-app-engine - 如何使用 Java 指定遗留增量 ID

标签 google-app-engine objectify

我使用的是 GAE 1.8.1,我遇到了一个关于 new scattered ID system 的 Objectify 问题。 .至少我认为它是 Objectify,我不确定(使用 Objectify 4 RC1)。我明白了..

Caused by: java.lang.IllegalArgumentException: id cannot be zero
    at com.google.appengine.api.datastore.KeyFactory.createKey(KeyFactory.java:52)
    at com.google.appengine.api.datastore.KeyFactory.createKey(KeyFactory.java:47)
    at com.googlecode.objectify.Key.<init>(Key.java:91)
    at com.googlecode.objectify.Key.create(Key.java:39)
    at com.googlecode.objectify.impl.cmd.LoadTypeImpl.id(LoadTypeImpl.java:77)

记录被正确地放入数据存储中,因为它们有一个 ID,但这是关于提取数据的。

所以我暂时要回滚到以前的样子。它说 here您可以通过修改 appengine-web.xml 中的 auto_id_policy 指定旧版 ID 生成。我试过将此添加到文件中:

<auto-id-policy>legacy</auto-id-policy>

但它不起作用,或者至少如果它验证的 XSD 支持此标记,它可能会起作用。因此,您无法部署该应用。

最佳答案

我们已注意到此问题并正在努力修复。

关于google-app-engine - 如何使用 Java 指定遗留增量 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17096453/

相关文章:

python - 没有 Web 服务的 Bigquery cron 作业

java - 对象化查询以返回属性值列表

google-app-engine - Appengine 单元测试因 Objectify 失败 - 未注册类

google-app-engine - 检查对象是否存在的最快方法

java - 如何为 AppEngine 实体添加 creationTime

java - 让 blobstore 回调到端点方法

google-app-engine - 无法在我本地的 Google App Engine 上的 Go 中启动演示应用程序

java - App Engine 柔性环境是否支持 Quartz?

google-app-engine - 谷歌发布订阅 : UNAVAILABLE: The service was unable to fulfill your request

修改列表时出现java.util.ConcurrentModificationException