google-app-engine - 使用 Cloud Endpoints 对象化

标签 google-app-engine google-cloud-endpoints objectify

我正在使用 Appengine 云端点和对象化。我以前部署过这些端点,现在我正在更新它们,但它不能与 Objectify 一起使用。我已经转移到一台新机器并运行最新的 appengine 1.8.6。尝试将 objectify 放入类路径中,但没有用。我知道这可行,我还缺少什么??

运行 endpoints.sh 时:

Error: Parameterized type
   com.googlecode.objectify.Key<MyClass> not supported.

更新: 我回到我的旧计算机并在同一个端点上运行 endpoints.sh,它工作正常。旧机器有 1.8.3。我正在使用 objectify 3.1。

更新 2: 将我的旧机器更新到 1.8.6 并得到与其他机器相同的错误。留下 2 种可能性: 1) 端点不再支持 objectify 3.1 2) Endpoints 在最新版本中存在错误

很可能#1...无论如何我一直想更新到 4.0...

最佳答案

由于 Objectify 的流行,在以前的版本中添加了一个解决方法来支持 Key 类型,直到有更通用的解决方案可用。因为新的解决方案可用,解决方法已被删除。现在,您可以通过两种方式处理属性(property)问题。

  1. 添加 @ApiResourceProperty导致在序列化过程中从对象中省略键的注释。如果您想要一个简单的解决方案并且不需要访问客户端中的 key ,请使用此方法。
  2. 添加 @ApiTransformer注释提供了一个兼容的机制来序列化/反序列化字段。如果需要访问客户端中的 key (或其表示形式),请使用此方法。由于这需要编写一个转换器类,因此它比第一个选项工作量更大。

关于google-app-engine - 使用 Cloud Endpoints 对象化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19707359/

相关文章:

java - 如何最好地在 GAE 应用程序中存储凭据?

security - 谷歌应用引擎的 ssl 是免费的吗?

java - 数据存储查询超时

javascript - 如何从 Javascript 调用经过 Firebase 身份验证的云端点?

google-app-engine - 在自定义域上部署云端点

java - 对象化实体 - 重用问题

java - 为什么 objectify 返回不一致的数据?

python - App Engine 上 Python 的最佳 Twitter 框架?

java - 使用新字段更新 Google 数据存储的最佳方式是什么?

java - 在 App Engine 数据存储中设置文本数据类型的编码