【问题标题】:JPA query not returning results when run in remote server在远程服务器中运行时,JPA 查询不返回结果
【发布时间】:2014-11-07 07:04:22
【问题描述】:

我正在开发一个带有应用引擎后端的安卓应用。当我在远程服务器中运行后端应用程序并使用 JPQL 查询查询实体时,如下所示,它不返回任何结果。

  queryString= "SELECT i FROM Item AS i WHERE i.locationId= :locId ORDER BY i.itemQuantity";
  Query q = mgr.createQuery(queryString);
  q.setParameter("locId", location);

但是,在本地开发服务器中运行相同的查询时,它会返回结果。

另一个观察:如果我们删除参数并仅使用 ORDER BY 语句保持查询简单,它会在开发服务器和远程运行中返回结果。

【问题讨论】:

    标签: android jpa google-app-engine


    【解决方案1】:

    对于复杂的查询,您需要define an explicit composite index

    本地开发服务器动态构建它,而在生产服务器上,您需要显式定义复合索引。

    对于简单的查询,例如只有使用 ORDER BY,复合索引不是必需的,所以你得到了预期的结果。

    【讨论】:

      猜你喜欢
      • 2021-07-16
      • 2019-08-02
      • 2010-11-03
      • 1970-01-01
      • 2013-08-15
      • 2013-04-29
      • 2016-10-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多