formulaire jsf: dropdown et datatable
Comment gérer plusieurs dropdown et tables qui proposent une colonne sélectionner (car pas de multiple display value avec des dropdown)sachant qu'une sélection influe sur la sélection suivante?L'ensemble est relié à divers tables d'une BD mysql.
Est-ce que je dois faire appel aux virtuals forms; l'idéal serait un lien vers un tutorial.
Merci de m'aider cela me paraît insurmontable avec les jsf sous netbeans 6
n'ya til pas un moyen standard pour faire ce traitement
Car le problème c'est à l'affichage qu'il faut initialiser les dropdown et les datatable. Je te montre ce que cela donne au niveau du code:
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
| /**
* <p>Callback method that is called just before rendering takes place.
* This method will <strong>only</strong> be called for the page that
* will actually be rendered (and not, for example, on a page that
* handled a postback and then navigated to a different page). Customize
* this method to allocate resources that will be required for rendering
* this page.</p>
*/
@Override
public void prerender() {
if (dropDown1.getSelected() == null) {
Object firstProfId = null;
try {
professeurDataProvider.cursorFirst();
firstProfId = professeurDataProvider.getValue("PROFESSEUR.PROF_ID");
dropDown1.setSelected(firstProfId);
getSessionBean1().getClasseprofenseignerRowSet().setObject(
1, firstProfId);
classeprofenseignerDataProvider.refresh();
} catch (Exception e) {
error("Cannot switch to person " +
firstProfId);
log("Cannot switch to person " +
firstProfId, e);
}
try {
//classeprofenseignerDataProvider.cursorFirst();
getSessionBean1().getEleveclasseconstituerRowSet().setObject(1, classeprofenseignerDataProvider.getValue("Classe_id"));
getSessionBean1().getEleveclasseconstituerRowSet().setObject(2, classeprofenseignerDataProvider.getValue("date"));
eleveclasseconstituerDataProvider.refresh();
} catch (Exception e) {
//error("Cannot switch to person " + selectedProfId);
//log("Cannot switch to person " + selectedProfId, e);
}
}
if (dropDown2.getSelected() == null) {
Object firstEleveId = null;
try {
//eleveclasseconstituerDataProvider.cursorFirst();
firstEleveId = eleveclasseconstituerDataProvider.getValue("eleve_id");
dropDown2.setSelected(firstEleveId);
getSessionBean1().getDevoireleveinterrogerRowSet().setObject(1, firstEleveId);
devoireleveinterrogerDataProvider.refresh();
} catch (Exception e) {
}
}
} |
(Je suis assez étonné du développement jsf j'ai pas écrit beaucoup de lignes de code j'ai utilisé les bind data pour les données entre les tables.)