Utilisation du <h:selectOneMenu />
Bonsoir,
J'ai un problème avec l'ajout dans une application Crud
Voilà le ManagerBean :
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 79
|
package com.beans;
import java.io.Serializable;
import com.bo.DiplomeBo;
import com.model.Diplome;
import com.model.Typediplome;
import com.model.Typeecole;
public class DiplomeBean implements Serializable {
DiplomeBo diplomeBo;
public Typediplome typediplome;
public Typeecole typeecole;
public String niveau;
public String ecole;
public Integer promotion;
public Typediplome getTypediplome() {
return typediplome;
}
public void setTypediplome(Typediplome typediplome) {
this.typediplome = typediplome;
}
public Typeecole getTypeecole() {
return typeecole;
}
public void setTypeecole(Typeecole typeecole) {
this.typeecole = typeecole;
}
public String getNiveau() {
return niveau;
}
public void setNiveau(String niveau) {
this.niveau = niveau;
}
public String getEcole() {
return ecole;
}
public void setEcole(String ecole) {
this.ecole = ecole;
}
public Integer getPromotion() {
return promotion;
}
public void setPromotion(Integer promotion) {
this.promotion = promotion;
}
public void setDiplomeBo(DiplomeBo diplomeBo) {
this.diplomeBo = diplomeBo;
}
public String addDiplome(){
Diplome diplome=new Diplome();
diplome.setEcole(getEcole());
diplome.setNiveau(getNiveau());
diplome.setTypeecole(getTypeecole());
diplome.setTypediplome(getTypediplome());
diplome.setPromotion(getPromotion());
diplomeBo.addDiplome(diplome);
clearForm();
return "Aff";
}
private void clearForm(){
this.setEcole("");
this.setNiveau("");
this.setPromotion(0);
this.setTypediplome(null);
this.setTypeecole(null);
}
} |
La page xhtml
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
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:p="http://primefaces.org/ui">
<h:head></h:head>
<body>
<f:view>
<h:outputLink value="Admin/default.xhtml">Go to your app</h:outputLink>
<h2>Add New Diplome</h2>
<h:form>
<h:panelGrid columns="5">
Ecole :
<h:inputText id="ecole" value="#{diplome.ecole}"
size="20" required="true"
label="Ecole" >
</h:inputText>
Niveau :
<h:inputText id="niveau" value="#{diplome.niveau}"
size="20" required="true"
label="Niveau" >
</h:inputText>
Type diplome :
<h:selectOneMenu value="#{diplome.typediplome}" >
<f:selectItem itemDisabled="true" itemLabel="Select a rank ..." />
<f:selectItems value="#{typediplome.findAllTypediplome()}" var="localRank" itemLabel="#{localRank.typeDiplome}" />
</h:selectOneMenu>
Type Ecole :
<h:selectOneMenu value="#{diplome.typeecole}" >
<f:selectItem itemDisabled="true" itemLabel="Select a rank ..." />
<f:selectItems value="#{typeecole.findAllTypeecole()}" var="localRank" itemLabel="#{localRank.typeEcole}" />
</h:selectOneMenu>
Promotion :
<h:inputText id="promotion" value="#{diplome.promotion}"
size="20" required="true"
label="Promotion" >
</h:inputText>
</h:panelGrid>
<h:commandButton value="Submit" action="#{diplome.addDiplome()}" />
</h:form>
</f:view>
</body>
</html> |
La <h:selectOneMenu /> est chargée par les donnée main quand je clique sur
submit l'ajout ne passe pas. Mais lorsque je laisse la <h:selectOneMenu /> sans sélection l'ajout passe.
Merci d'avance pour votre aide.