2010-11-22 10 views
1

私は条件を使用して、アクティブなユーザーを含む通知のリストを取得しています。問題は、次のエラーが表示されることです。hibernate:オブジェクト内のオブジェクトにアクセスするための条件を使用する

その他ユーザーがアクティブであることを確認していない場合は、通知が必要なタイプであることを確認する必要があります。ここに私のコードは次のとおりです。https://forum.hibernate.org/viewtopic.php?t=948576&highlight=subproperty

が、私はまだ作成する方法grokingいない午前:

session.createCriteria("com.company.Notification") 
    .add(Restrictions.or(Restrictions.eq("type", "email"), 
    .add(Restrictions.eq("user.active", true)).list(); 

通知が順番に私は、このページで探していますフィールドBoolean active

を持つフィールドUser userを持っています親オブジェクトと子オブジェクトに何かにアクセスする基準。

答えて

6

はこの試してみてください...助け

session.createCriteria("com.company.Notification") 
    .add(Restrictions.or(Restrictions.eq("type", "email") 
    .createCriteria("user") // this creates the join on the user table... 
    .add(Restrictions.eq("active", true)).list(); 

希望を

関連する問題