Entity :
Code:
@Indexed
@AnalyzerDefs({
@AnalyzerDef(name="standardStopWords",
tokenizer=
@TokenizerDef(factory = StandardTokenizerFactory.class),
filters = {
@TokenFilterDef(factory = LowerCaseFilterFactory.class),
@TokenFilterDef(factory = ISOLatin1AccentFilterFactory.class),
@TokenFilterDef(factory = StopFilterFactory.class,
params={
@Parameter(name="words", value="StopWords.txt"),
@Parameter(name="ignoreCase", value="true")
}
)
}
)
})
@Entity
public class Demande extends DemandeEntity {
Superclass :
Code:
@MappedSuperclass
public class DemandeEntity implements Serializable {
@FieldBridge(impl=Demande_DocumentId_Bridge.class)
@DocumentId
@IndexedEmbedded
private DemandePK demandePK;
Bridge :
Code:
public class Demande_DocumentId_Bridge implements TwoWayStringBridge {
public Object stringToObject(String arg0) {
String[] tab = arg0.split("þ");
return new DemandePK(tab[0],tab[1],tab[2]);
}
public String objectToString(Object arg0) {
DemandePK d = (DemandePK)arg0;
return d.getUiPhar()+"þ"+d.getRdes()+"þ"+d.getTypeDem();
}
}
TestClass :
Code:
public static void main(String[] args) {
ClassPathXmlApplicationContext appContext = new ClassPathXmlApplicationContext("META-INF/PostGreSQL-applicationContext.xml");
GenericSearchManagerMetier demandeSearchManagerMetier = (GenericSearchManagerMetier) appContext.getBean("demandeSearchManagerMetier");
String rqt = "+text:jean +text:francois";
BeanLuceneQuery beanLuceneQuery = new BeanLuceneQuery(rqt);
BeanResultats br = null;
try {
br = demandeSearchManagerMetier.searchLuceneQuery(beanLuceneQuery,0,15);
} catch (NegativeOrNullInteger e) {
e.printStackTrace();
}
System.out.print("Nb total : "+br.getNbTotalResults()+"\n");
System.out.print("Nb Résultats : "+br.getResults().size()+"\n");
}
Lucene part of precess is alright !
Primary keys DemandePK generated by HS just before requesting DB are alright
but no return...
br.getNbTotalResults() return 16
but
br.getResults().size() return 0
Beans are correctly implemented.
I traced return of :
Code:
List<T> resultList = q.getResultList();
but list size = 0
stdout :
Code:
Hibernate: select this_ (..xxx..) from Demande this_ where ((this_.RDES, this_.TYPE_DEM, this_.UI_PHAR) in ((?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?), (?, ?, ?)))
Nb total : 16
Nb Résultats : 0
i see no problem in my code...
thx for help.
G. S.