Erreur lors de l'utilisation de l'API Criteria
bonjour, j'ai un soucis avec l'utilisation de l'API Criteria et j'ignore d'où provient le problème.
en fait, j'esaie de récupérer des informations dans ma base de donné à l'aide d'un dao générique. la méthode que j'utilise est la suivante:
Code:
1 2 3 4 5 6 7
| public List<T> getByCondition(String condition, Object vCondition){
List<T> result=null;
Criteria crit= getSession().createCriteria(getEntityClass())
.add(Restrictions.like(condition, vCondition));
result= crit.list();
return result;
} |
j'appel cette méthode dans un managedBean via un EJB ainsi:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| public List<SelectItem> getListCCByType(){
System.out.println("welcome in ajax");
//récupération du type de la catégorie depuis le bean managé CategorieC
List<CategorieComptable> lc= new ArrayList<CategorieComptable>();
final String colone= "type";
final String type= "vente";
dao.setEntityClass(CategorieComptable.class);
lc=dao.getByCondition(colone, type);
for(CategorieComptable cc: lc){
listCCByType.add(new SelectItem(cc.getCategorie(), cc.getCategorie().toUpperCase()));
}
return listCCByType;
} |
j'ai déjà utiliser plusieurs fois cet API dans divers cas et c'est la même erreur qui revient à chaque fois à quelque exceptions près:
Code:
java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Enum
il s'agit toujours d'un problème de conversion d'un type en un autre. Quelqu'un aurait-il déjà rencontré un problème semblable? j'attends patiemment vos intervention et merci déjà