2012-04-15 2 views
0

多くの例を見てきましたが、私の問題ではうまくいきません。私はGAE(Java)でJDOを使用しています。私はエラーメッセージを受け取っていません。 dispatchIdの空のListを持つオブジェクトと一致する結果が得られるはずです。どんな助けでも大歓迎です!私はそのdispatchId一覧特定dispatchIdコードが含まれている部門を見つけようとしている問題をクエリできませんリスト<String> GAE JDOの子フィールド

public class Department { 

    @PrimaryKey 
    @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY) 
    private Long id; 

... 

    // a list of codes that a department might be identified by 
    @Persistent 
    private List<String> dispatchId; 

} 

は、ここに私の関連するクラスコードです。私のJavaサーブレットのコードは次のとおりです。GAEデータストアビューアで

String dispatchId = "1353000"; // may contain letters and/or numbers 
Query q = pm.newQuery(Department.class, ":dispatchId.contains(dispatchId)"); 
@SuppressWarnings("unchecked") 
List<Department> depts = (List<Department>) q.execute(dispatchId); 

(GAEに住んでいる)私のテスト部門のdispatchIdフィールドは次のようになります(場合には、このことができます):

[u'1353000' 、 u'0566940' 、u'0566936' 、u'1368496' ]任意の入力に対して再び

おかげで...ジョン

答えて

3

こんにちはあなたはまだ答えを探していたのですか?ここで

String dispatchId = "someId"; 
Query query = pm.newQuery(Department.class); 
query.setFilter("dispatchId == '"+ dispatchId + "'"); 
List<Department> depts = (List<Department>) query.execute(); 

あなたはパラメータを囲むために、単一引用符が必要になります。ここ

はそれのためのソリューションです。

関連する問題