あなたがJDO [1]とPersistanceManager [2]を使用しているようです。
実行しようとしているクエリが間違っていることがわかります。 JDO [3]でクエリを実行する方法を確認してください。
あなたのクエリは次のとおりです。
は
//Query for all persons with lastName equal to Smith or Jones
Query q = pm.newQuery(Person.class, ":p.contains(lastName)");
q.execute(Arrays.asList("Smith", "Jones"));
Person.class is the kind
Arrays.asList("Smith", "Jones")
このパラメータ "::p.contains(lastNameの)" lastNameのを定義し、私たちが望む性質であるあなたのような何かをしたいよう
String keywords[] = {"admin","drive","gmail","userinfo"};
Query query = pm.newQuery("SELECT scopes FROM com.cloudcodes.gcontrol.dataaccesslayer.insights.google.drive.GoogleInfo where :p.contains(scopes)");
result = (List) query.execute(Arrays.asList(keywords));
が見えますチェックする。 クラスをcom.cloudcodes.gcontrol.dataaccesslayer.insights.google.drive.GoogleInfoとして設定していますが、これはクラスが習慣的で、クラス名がGoogleInfoである完全なJava名パッケージであると思います。だからあなたは試してみることができます:
Query q = pm.newQuery(GoogleInfo.class, ":p.contains(scopes)");
q.execute(Arrays.asList("admin","drive","gmail","userinfo"));
スコープを取得します。私はあなたがREST APIを使いたいと思っています。したがって、内部:p.contains( "スコープ")は、取得したいエンティティにあるキーワードに関連する別のプロパティ、おそらく配列プロパティになる可能性がありますか?
ここで私は役に立つかもしれないいくつかのドキュメントを共有します[4] [5]。
希望すると便利です。
[1] https://cloud.google.com/appengine/docs/standard/java/datastore/jdo/overview-dn2
[2] http://massapi.com/method/javax/jdo/PersistenceManager.newQuery-4.html
[3] https://cloud.google.com/appengine/docs/standard/java/datastore/jdo/queries
[4] https://cloud.google.com/datastore/docs/concepts/overview#comparison_with_traditional_databases
[5] https://cloud.google.com/datastore/docs/reference/gql_reference