请给我帮助。我在页面中创建了h:selectOneMenu,但它在我的bean中没有返回值。这是我的JSF代码
<ui:repeat value="#{localCahiersJpaController.findLocalCahiersEntities()}" var="elementCahier" >
<h:form> <div class="col-md-4 product-men">
<div class="men-pro-item simpleCart_shelfItem">
<div class="men-thumb-item">
<h:graphicImage library="img" name="m1.jpg" />
<span class="product-new-top">#{elementCahier.prix}f</span>
</div>
<div class="item-info-product ">
<h4><a href="single.html">#{elementCahier.nom}</a></h4>
<div class="info-product-price">
<span class="item_price">#{elementCahier.prix}fcfa/ </span>
<span class="item_price">#{elementCahier.page}</span>
</div>
<div class="info-product-price">
#{controleAchat.maQuantites}
Quantités : <h:selectOneMenu value="#{controleAchat.maQuantites}">
<f:selectItem itemLabel="0" itemValue="0" />
<f:selectItem itemLabel="1" itemValue="1" />
<f:selectItem itemLabel="2" itemValue="2" />
<f:selectItem itemLabel="3" itemValue="3" />
<f:selectItem itemLabel="4" itemValue="4" />
<f:selectItem itemLabel="6" itemValue="6" />
<f:selectItem itemLabel="7" itemValue="7" />
<f:selectItem itemLabel="8" itemValue="8" />
<f:selectItem itemLabel="9" itemValue="9" />
<f:selectItem itemLabel="10" itemValue="10" />
</h:selectOneMenu>
</div>
<div class="snipcart-details top_brand_home_details item_add single-item hvr-outline-out">
<h:commandButton action="#{controleAchat.ajouCahierPanier(elementCahier)}" value="Ajoutez au panier" styleClass="btn btn-primary" />
</div>
</div>
</div>
</div></h:form>
</ui:repeat>
这是我的Java bean代码
@ManagedBean
@SessionScoped
public class ControleAchat {
private int compteurPanier;
private String maQuantites;
public GestionLien lien = new GestionLien();
Cahiers cahier = new Cahiers();
Divers divers = new Divers();
Livres livres = new Livres();
Sacs sac = new Sacs();
private List<Cahiers> itemCahier = new ArrayList<>() ;
private List<Divers> itemDivers = new ArrayList<>() ;
private List<Livres> itemLivre = new ArrayList<>() ;
private List<Sacs> itemSacs = new ArrayList<>() ;
public ControleAchat(){}
public ControleAchat(int compteurPanier, String maQuantites) {
this.compteurPanier = compteurPanier;
this.maQuantites = maQuantites;
}
//Ajout
public String ajouCahierPanier(LocalCahiers local){
int i = Integer.valueOf(this.maQuantites).intValue();
if(i != 0){
int prixTotal = local.getPrix() * 1;
cahier = new Cahiers(local.getNom(),local.getPage(), 1,
local.getPrix(),prixTotal);
this.compteurPanier += 1;
itemCahier.add(cahier);
this.maQuantites = null;
}
return lien.lienCahier();
}
/*
public String ajouDiversPanier(LocalDivers local){
Integer monnombre=new Integer(this.quantites);
int i = monnombre.intValue();
if(i != 0){
int prixTotal= local.getPrix() * local.getQuantites();
divers = new Divers(local.getNom(),i,local.getPrix(),prixTotal);
itemDivers.add(divers);
this.compteurPanier += 1;
this.quantites = null;}
return lien.lienDivers();
}
public String ajouLivresPanier(LocalLivre local){
Integer monnombre=new Integer(this.quantites);
int i = monnombre.intValue();
if(i != 0){
int prixTotal= local.getPrix() * local.getQuantites();
livres = new Livres(local.getNom(),local.getIdInfoLivres().getClasse()
,local.getQuantites(), local.getPrix(),local.getPrixTotal());
itemLivre.add(livres);
this.compteurPanier += 1;
this.quantites = null;}
return lien.lienLivres();
}
public String ajouSacsPanier(LocalSac local){
Integer monnombre=new Integer(this.quantites);
int i = monnombre.intValue();
if(i != 0){
int prixTotal= local.getPrix() * local.getQuantites();
sac = new Sacs(local.getNom(),i,local.getPrix(),prixTotal);
itemSacs.add(sac);
this.compteurPanier += 1;
this.quantites = null;}
return lien.lienSacs();
}
*/
//Suppression
public String sppressionCahier(Cahiers local){
itemCahier.remove(local) ;
this.compteurPanier -= 1;
return lien.lienPanier();
}
public String sppressionDivers(Divers local){
itemDivers.remove(local) ;
this.compteurPanier -= 1;
return lien.lienPanier();
}
public String sppressionLivres(Livres local){
itemLivre.remove(local) ;
this.compteurPanier -= 1;
return lien.lienPanier();
}
public String sppressionSacs(Sacs local){
itemSacs.remove(local) ;
this.compteurPanier -= 1;
return lien.lienPanier();
}
public int getCompteurPanier() {
return compteurPanier;
}
public void setCompteurPanier(int compteurPanier) {
this.compteurPanier = compteurPanier;
}
public String getMaQuantites() {
return maQuantites;
}
public void setMaQuantites(String maQuantites) {
this.maQuantites = maQuantites;
}
public Cahiers getCahier() {
return cahier;
}
public void setCahier(Cahiers cahier) {
this.cahier = cahier;
}
public Divers getDivers() {
return divers;
}
public void setDivers(Divers divers) {
this.divers = divers;
}
public Livres getLivres() {
return livres;
}
public void setLivres(Livres livres) {
this.livres = livres;
}
public Sacs getSac() {
return sac;
}
public void setSac(Sacs sac) {
this.sac = sac;
}
public List<Cahiers> getItemCahier() {
return itemCahier;
}
public void setItemCahier(List<Cahiers> itemCahier) {
this.itemCahier = itemCahier;
}
public List<Divers> getItemDivers() {
return itemDivers;
}
public void setItemDivers(List<Divers> itemDivers) {
this.itemDivers = itemDivers;
}
public List<Livres> getItemLivre() {
return itemLivre;
}
public void setItemLivre(List<Livres> itemLivre) {
this.itemLivre = itemLivre;
}
public List<Sacs> getItemSacs() {
return itemSacs;
}
public void setItemSacs(List<Sacs> itemSacs) {
this.itemSacs = itemSacs;
}
}
我想将一种产品添加到购物篮中,所以我使用了SessionBean
来进行此操作,注册时,客户必须输入产品的数量
。我输入了inputText,但是在恢复期间,恢复总是零,因为客户端输入的数量没有恢复,所以我尝试了oneSelectMenu
,但这是相同的错误。