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 行で「and」があるところならどこでも MorphiaPlugin が分割されていると私は信じています

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

これに対する回避策はありますか?where句で「and」という単語をエスケープするにはどうすればよいですか? 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 に答える