0

私はコンストラクターを持つ HibernateLoopDataSource を実装しました。1 つは基準が適用されず、もう 1 つは適用されます。以下のようです

HibernateLoopDataSource.java

//code trimmed
HibernateLoopDataSource(Session hibernate, Class<?> typeOfClass){
  this.hibernate = hibernate;
  this.typeOfClass = typeOfClass;
}

HibernateLoopDataSource(Session hibernate, Class<?> typeOfClass, AppliedCriteria appliedCriteria){
  this.hibernate = hibernate;
  this.typeOfClass = typeOfClass;

}



AppliedCriteria.java //looks like following 

これはインターフェースであり、メソッドが 1 つしか含まれていません

applyingCriteria(Criteria criteria);

GettingArticles.java

// code trimmed

public LoopDataSource getArticles(){
return new HibernateLoopDataSource(hibernate, Article.class, new AppliedCriteria(){
 public void applyingCriteria(Criteria criteria){
   criteria.add(Restrictions.eq("article.id", fullCommentPageListing.getArticle().getId()));}});}

ただし、初期化しようとすると何も報告されませんが、基準を適用せずにループします。この問題の原因は何でしょう。私は 2 時間立ち往生しています。些細なことかもしれませんが、これに 8 時間取り組んでいるため、見ることができません。どんな助けでも大歓迎です。

4

1 に答える 1

1

コンストラクターの基準引数では何もしません。

HibernateLoopDataSource(Session hibernate, 
                        Class<?> typeOfClass, 
                        AppliedCriteria appliedCriteria){
    this.hibernate = hibernate;
    this.typeOfClass = typeOfClass;
    // you should have this.appliedCriteria = appliedCriteria here
}
于 2012-10-13T20:21:19.957 に答える