使用云端点进行对象化

2024-03-06

我正在使用 appengine 云端点和 objectify。我之前已经部署过这些端点,现在我正在更新它们,但它无法与 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.1or2)端点在最新版本中存在错误

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


由于 Objectify 的流行,在之前的版本中添加了一种解决方法来支持Key类型,直到有更通用的解决方案可用。由于新解决方案可用,因此解决方法已被删除。现在您可以通过两种方式解决该房产的问题。

  1. Add an @ApiResourceProperty https://developers.google.com/appengine/docs/java/endpoints/annotations#apiresourceproperty导致在序列化期间从对象中省略键的注释。如果您想要一个简单的解决方案并且不需要访问客户端中的密钥,请使用此方法。
  2. Add an @ApiTransformer https://developers.google.com/appengine/docs/java/endpoints/annotations#apitransformer提供兼容机制来序列化/反序列化字段的注释。如果需要访问客户端中的密钥(或其表示形式),请使用此方法。由于这需要编写一个转换器类,因此它比第一个选项需要更多工作。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用云端点进行对象化 的相关文章

随机推荐