Datatable qui ne renvoie rien
Salut je débute en JSF j'ai pas encore les bons réflexes, j'ai vu que l'on pouvait utiliser une table de données, ça tombe bien j'ai une liste de catégories a faire :
Code:
1 2 3
| <html:dataTable var="categorie" value="#{listeCategoriesAdmin.categories}">
<div><html:outputText value="#{categorie.categorie}"></html:outputText></div>
</html:dataTable> |
Avec mon bean listeCategoriesAdmin déclaré dans la vue (view) :
(ListeCategoriesAdmin.java)
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| package beans;
import java.io.Serializable;
/**
*
* @author pj
*/
public class ListeCategoriesAdmin extends Categories implements Serializable {
/** Creates a new instance of ListeCategoriesAdmin */
public ListeCategoriesAdmin() {
super();
this.initListeAdmin();
}
} |
et la classe parente Categories.java qui s'occupe d'initialiser la List :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78
| package beans;
import classes.Objet;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.naming.NamingException;
/**
*
* @author pj
*/
public class Categories extends Objet {
private int nb;
private List categories;
/** Creates a new instance of Categories */
public Categories() {
super();
this.nb=0;
}
public void initListeAdmin() {
try {
this.categories=new ArrayList();
this.getConnection();
String query="SELECT COUNT(id) AS nb FROM table_categories";
Statement state=this.con.createStatement();
ResultSet result=state.executeQuery(query);
result.next();
this.nb=result.getInt("nb");
result.close();
state.close();
if(this.nb>0) {
query="SELECT categorie FROM table_categories ORDER BY categorie ASC LIMIT 0,"+this.nb;
state=this.con.createStatement();
result=state.executeQuery(query);
while(result.next()) {
Categorie categorie=new Categorie();
categorie.setCategorie(result.getString("categorie"));
this.getCategories().add(categorie);
}
result.close();
state.close();
}
} catch (NamingException ex) {
Logger.getLogger(Categories.class.getName()).log(Level.SEVERE, null, ex);
this.nb=0;
this.getCategories().clear();
} catch (SQLException ex) {
Logger.getLogger(Categories.class.getName()).log(Level.SEVERE, null, ex);
this.nb=0;
this.getCategories().clear();
} finally {
try {
this.closeConnection();
} catch (SQLException ex) {
Logger.getLogger(Categories.class.getName()).log(Level.SEVERE, null, ex);
this.nb=0;
this.getCategories().clear();
}
}
}
/**
* @return the categories
*/
public List getCategories() {
return categories;
}
} |
Le problème c'est que rien n'est listé, je vois pas trop le problème vu qu'aucun message d'erreur n’apparaît.
Merci pour votre aide.