0

当我尝试通过传递这样的 where 子句来自定义 CRUD 的 list() 函数时:

where = "state in (Punjab,Jammu and Kashmir)";
List objects = type.findPage(page, search, searchFields, orderBy, order, where);

我得到一个 IllegalArgumentException 如下所示:

IllegalArgumentException occured : invalid where clause: state in (Punjab,Jammu and Kashmir).

我相信这是 MorphiaPlugin 正在分裂,只要有这个 MorphiaPlugin 线的“和”

String[] propValPairs = where.split("(and|&&)");

有什么解决方法吗?如何在 where 子句中转义“和”这个词?我正在使用 Play 1.2.5 和 morphia-1.2.9。

4

1 回答 1

0

您应该在“in”表达式中将“and”替换为“,”:

state in (Punjab,Jammu and Kashmir)=> state in (Punjab,Jammu, Kashmir)

于 2012-09-15T22:30:01.103 回答