Can';t使用EL和JSF从其他列表访问子列表

Can';t使用EL和JSF从其他列表访问子列表,jsf,el,nested-lists,uirepeat,Jsf,El,Nested Lists,Uirepeat,我有一个“listActivite_-Realize”列表,其中包含一个“activite”列表,我试图迭代每个“listActivite_-Realize”,迭代每个“activite”并访问其属性 我试图通过JSF视图中的EL来实现这一点: 在第一次重复中,我可以从var=“activite_Realize”访问我的列表“listActivite_Realize”中的项目,例如activite_Realize.property 但在我的第二次重复中,列表“listActivite”似乎没

我有一个“listActivite_-Realize”列表,其中包含一个“activite”列表,我试图迭代每个“listActivite_-Realize”,迭代每个“activite”并访问其属性

我试图通过JSF视图中的EL来实现这一点:


在第一次重复中,我可以从var=“activite_Realize”访问我的列表“listActivite_Realize”中的项目,例如activite_Realize.property

但在我的第二次重复中,列表“listActivite”似乎没有绑定var=“activite”

我无法访问activite.property

我在书堆上找到了关于这个主题的所有东西。还有google,但我似乎使用了正确的EL/JSF语法来实现它

我还尝试使用h:DataTable代替ui:repeat

你知道问题是从哪里来的吗

如果这个问题与我没有在这里公开的部分代码有关,请让我做些什么

提前谢谢

对不起,我的英语不是我的母语

编辑: 服务器日志中没有错误日志

子ui:repeat不会生成HTML输入

Netbeans允许我在子ui中自动完成:重复,但它显示错误的属性。它显示列表“listActivite”中的属性,而不是好的列表“listActivite”

我的persistence.xml文件删除并创建我的数据库

在托管Bean“documentbean”的@Postconstruct中,我初始化我需要的所有记录。它创建“文档”,添加一些由“活动”列表组成的新“活动”,等等。 它是迄今为止我使用的唯一一个托管bean

/*


* To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package controllers;

import facades.UtilisateurFacade;
import java.io.Serializable;
import java.util.AbstractList;
import java.util.ArrayList;
import java.util.List;
import javabeans.Activite;
import javabeans.Activite_realise;
import javabeans.CV;
import javabeans.Cadre_formation;
import javabeans.Competence;
import javabeans.Contexte_entreprise;
import javabeans.Document;
import javabeans.Engagament_acteurs;
import javabeans.Evaluation_activite;
import javabeans.Formation_interne;
import javabeans.Le_contrat;
import javabeans.ModuleFormation;
import javabeans.Module_formation_vue;
import javabeans.Page_garde;
import javabeans.Plan_formation;
import javabeans.Planing_alternance;
import javabeans.Postes_competences;
import javabeans.Presentation_apprenti;
import javabeans.Presentation_contrat;
import javabeans.Presentation_entreprise;
import javabeans.Previsionnel_missions_4;
import javabeans.Previsionnel_missions_6;
import javabeans.Previsionnel_missions_9;
import javabeans.Reglement_interieur;
import javabeans.Systeme_dinformation;
import javabeans.Utilisateur;
import javax.annotation.PostConstruct;
import javax.ejb.EJB;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;

/**
 *
 * @author Skrface
 */
@ManagedBean
@SessionScoped
public class UtilisateurBean implements Serializable {

    private Utilisateur utilisateur;

    private List<Utilisateur> listUtilisateur;

    @EJB
    private UtilisateurFacade utilisateurFacade;

    /**
     * Creates a new instance of UtilisateurBean
     */
    public UtilisateurBean() {
    }

    public UtilisateurBean(Utilisateur utilisateur, List<Utilisateur> listUtilisateur, UtilisateurFacade utilisateurFacade) {
        this.utilisateur = utilisateur;
        this.listUtilisateur = listUtilisateur;
        this.utilisateurFacade = utilisateurFacade;
    }

    public Utilisateur getUtilisateur() {
        return utilisateur;
    }

    public void setUtilisateur(Utilisateur utilisateur) {
        this.utilisateur = utilisateur;
    }

    public List<Utilisateur> getListUtilisateur() {
        return listUtilisateur;
    }

    public void setListUtilisateur(List<Utilisateur> listUtilisateur) {
        this.listUtilisateur = listUtilisateur;
    }

    public UtilisateurFacade getUtilisateurFacade() {
        return utilisateurFacade;
    }

    public void setUtilisateurFacade(UtilisateurFacade utilisateurFacade) {
        this.utilisateurFacade = utilisateurFacade;
    }

    @PostConstruct
    public void init() {

        //On crée les pages type formulaire
        Plan_formation plan_formation = new Plan_formation();
        plan_formation.setUrlImage_plan_formation("dsfhdfhgdjj");

        Reglement_interieur reglement_interieur = new Reglement_interieur();
        reglement_interieur.setUrlImage_reglement("sDGsdgdSH");

        Cadre_formation cadre_formation = new Cadre_formation();
        cadre_formation.setDomaine1("Sfsdhsh");

        Formation_interne formation_interne = new Formation_interne();
        formation_interne.setUrlImage_formation_interne("SDGHGfhdgnhd");

        Previsionnel_missions_9 previsionnel_missions_9 = new Previsionnel_missions_9();
        previsionnel_missions_9.setActivite_11("DSgSGD");

        Previsionnel_missions_6 previsionnel_missions_6 = new Previsionnel_missions_6();
        previsionnel_missions_6.setActivite_11("DSgSGD");

        Previsionnel_missions_4 previsionnel_missions_4 = new Previsionnel_missions_4();
        previsionnel_missions_4.setActivite_11("DSgSGD");

        Postes_competences postes_competences = new Postes_competences();
        postes_competences.setConseils_maitre_apprenti("DSGgsgdsfhdfhdf");

        Systeme_dinformation systeme_dinformation = new Systeme_dinformation();
        systeme_dinformation.setCentralisation_interne_externe("qsfqfqge");

        Contexte_entreprise contexte_entreprise = new Contexte_entreprise();
        contexte_entreprise.setHistorique_entreprise("DhfdHdhqjqjsfj");

        Presentation_entreprise presentation_entreprise = new Presentation_entreprise();
        presentation_entreprise.setAdresse("rue des youlahoup");

        CV cv = new CV();
        cv.setUrlImage_cv("sdlkhflsdgf");

        Presentation_apprenti presentation_apprenti = new Presentation_apprenti();
        presentation_apprenti.setAdresse_pero("12 rue des poulpes");

        Planing_alternance plan_alt = new Planing_alternance();
        plan_alt.setUrlImage_planing("sqihfoqgfoq");

        Le_contrat contrat = new Le_contrat();
        contrat.setUrlImage_contrat("www.image.com/image/tralala");

        Engagament_acteurs engagement_acteur = new Engagament_acteurs();
        engagement_acteur.setUrlImage_signature_apprenti("www.google.fr/image/moon");

        Presentation_contrat pres_contrat = new Presentation_contrat();
        pres_contrat.setAdresse_perso("12 rue des grenouilles");

        Page_garde page = new Page_garde();
        page.setNom("prout");

        //On crée le document
        Document doc = new Document();

        //On ajoute aux pages le document
        page.setDocument(doc);
        pres_contrat.setDocument(doc);
        engagement_acteur.setDocument(doc);
        contrat.setDocument(doc);
        plan_alt.setDocument(doc);
        presentation_apprenti.setDocument(doc);
        cv.setDocument(doc);
        presentation_entreprise.setDocument(doc);
        contexte_entreprise.setDocument(doc);
        systeme_dinformation.setDocument(doc);
        postes_competences.setDocument(doc);
        previsionnel_missions_4.setDocument(doc);
        previsionnel_missions_6.setDocument(doc);
        previsionnel_missions_9.setDocument(doc);
        formation_interne.setDocument(doc);
        cadre_formation.setDocument(doc);
        reglement_interieur.setDocument(doc);
        plan_formation.setDocument(doc);

        //On crée l'utilisateur et on lui ajoute le document
        Utilisateur user = new Utilisateur();
        user.setNom("admin");
        user.setPrenom("admin");
        user.setMot_de_passe("admin");

        //On ajoute les pages et l'utilisateur au document
        doc.setPage_garde(page);
        doc.setUtilisateur(user);
        doc.setPresentation_contrat(pres_contrat);
        doc.setEngagement_acteurs(engagement_acteur);
        doc.setLe_contrat(contrat);
        doc.setPlaning_alternance(plan_alt);
        doc.setPresentation_apprenti(presentation_apprenti);
        doc.setCv(cv);
        doc.setPresentation_entreprise(presentation_entreprise);
        doc.setContexte_entreprise(contexte_entreprise);
        doc.setSysteme_dinformation(systeme_dinformation);
        doc.setPostes_competences(postes_competences);
        doc.setPrevisionnel_missions_4(previsionnel_missions_4);
        doc.setPrevisionnel_missions_6(previsionnel_missions_6);
        doc.setPrevisionnel_missions_9(previsionnel_missions_9);
        doc.setFormation_interne(formation_interne);
        doc.setCadre_formation(cadre_formation);
        doc.setReglement_interieur(reglement_interieur);
        doc.setPlan_formation(plan_formation);

        //Ici on crée les pages multiples style activites_realises
        List<Evaluation_activite> lstEvaluation_activite = new ArrayList<>();
        List<Activite_realise> lstActivite_realise = new ArrayList<>();

        for (int i = 0; i < 2; i++) {

            Evaluation_activite evaluation_activite = new Evaluation_activite();
            evaluation_activite.setNom_apprenti("Paul");
            evaluation_activite.setDocument(doc);

            Activite_realise activite_realise = new Activite_realise();
            activite_realise.setNom_apprenti("Jack");
            activite_realise.setDocument(doc);

            //Ici on crée les objets activites et competences
            List<Activite> lstActivite = new ArrayList<>();

            for (int j = 0; j < 2; j++) {
                Activite activite = new Activite();
                activite.setIntitule("sdggd_" + i);
                activite.setActivite_realise(activite_realise);
                activite.setEvaluation_activite(evaluation_activite);

                Competence competence = new Competence();
                competence.setDescription("sdvsg_" + i);
                competence.setActivite(activite);

                Competence competence1 = new Competence();
                competence1.setDescription("sdgfhjvsg_" + i);
                competence1.setActivite(activite);

                List<Competence> lstCompetence = new ArrayList<Competence>();
                lstCompetence.add(competence);
                lstCompetence.add(competence1);

                activite.setListCompetence(lstCompetence);
                lstActivite.add(activite);
            }

            evaluation_activite.setListActivite(lstActivite);
            evaluation_activite.setListActivite(lstActivite);

            lstEvaluation_activite.add(evaluation_activite);
            lstActivite_realise.add(activite_realise);
        }

        doc.setListActivite_realise(lstActivite_realise);
        doc.setListEvaluation_activite(lstEvaluation_activite);

        //Pages multiples pour les activites à l'école
        List<Module_formation_vue> lstModule_formation_vue = new ArrayList<Module_formation_vue>();
        for(int i = 0; i < 2; i++)
        {
            Module_formation_vue module_formation_vue = new Module_formation_vue();
            module_formation_vue.setNom_apprenti("sdgsdg");
            module_formation_vue.setDocument(doc);

            //On crée la liste des objets ModuleFormation
            List<ModuleFormation> lstModule_formation = new ArrayList<>();
            for(int k = 0; k < 2; k++)
            {
                ModuleFormation moduleformation = new ModuleFormation();
                moduleformation.setExperimenter_entreprise("sdgsdg");
                moduleformation.setModule_formation_vue(module_formation_vue);

                lstModule_formation.add(moduleformation);
            }
            module_formation_vue.setListModuleFormation(lstModule_formation);

            lstModule_formation_vue.add(module_formation_vue);
        }

        doc.setListModule_formation_vue(lstModule_formation_vue);

        user.setDocument(doc);

        //On crée l'utilisateur avec son document et toutes ses pages
        utilisateurFacade.create(user);

        List<Utilisateur> lstUser = utilisateurFacade.findAll();
        this.setListUtilisateur(lstUser);
    }
}
/*
*要更改此许可证标题,请在“项目属性”中选择“许可证标题”。
*要更改此模板文件,请选择工具|模板
*然后在编辑器中打开模板。
*/
包装控制器;
进口立面。利用外立面;
导入java.io.Serializable;
导入java.util.AbstractList;
导入java.util.ArrayList;
导入java.util.List;
导入javabeans.Activite;
导入javabeans.Activite_实现;
导入javabeans.CV;
导入javabeans.u格式;
进口javabeans.competency;
导入javabeans.Contexte_企业;
导入javabeans.Document;
导入javabeans.engagation_actors;
导入javabeans.Evaluation\u activate;
导入javabeans.Formation_interne;
导入javabeans.Le_contart;
导入javabeans.ModuleFormation;
导入javabeans.Module_formation_vue;
导入javabeans.Page_garde;
导入javabeans.Plan_格式;
导入javabeans.planning\u altrance;
导入javabeans.Postes_能力;
导入javabeans.Presentation\u apprenti;
导入javabeans.Presentation\u contart;
导入javabeans.Presentation_企业;
导入javabeans.Previsionnel_4;
导入javabeans.Previsionnel_任务6;
导入javabeans.Previsionnel_任务9;
导入javabeans.Reglement_interieur;
导入javabeans.Systeme_dinformation;
进口爪哇豆;
导入javax.annotation.PostConstruct;
导入javax.ejb.ejb;
导入javax.faces.bean.ManagedBean;
导入javax.faces.bean.SessionScoped;
/**
*
*@author Skrface
*/
@ManagedBean
@会议范围
public类实现了可序列化{
私人提款人提款人;
私人名单;
@EJB
私人用地表面用地表面;
/**
*创建UsilizateUnbean的新实例
*/
公共用途{
}
公共用地单位(用地单位用地单位,列表用地单位,用地单位用地单位用地单位用地单位用地单位用地单位用地单位){
this.utisulateur=utisulateur;
this.listUtisulateur=listUtisulateur;
this.utilizateurfacade=utilizateurfacade;
}
公众利用率{
归还提款人;
}
公共无效设置使用人(使用人使用人){
this.utisulateur=utisulateur;
}
公共列表GetListUsilisateur(){
归还清单;
}
公共无效设置ListUtisulateur(ListUtisulateur){
this.listUtisulateur=listUtisulateur;
}
公共利用率表外立面GetUtisulate表外立面(){
返回使用表面;
}
公共空间设置UsitateUrFacade(UsitateUrFacade UsitateUrFacade){
this.utilizateurfacade=utilizateurfacade;
}
@施工后
公共void init(){
//关于crée les pages类型公式
计划编制计划编制=新计划编制();
平面图构成。setUrlImage平面图构成(“DSFHDFGDJJ”);
Reglement_interieur Reglement_interieur=新Reglement_interieur();
reglement_interieur.setUrlImage_reglement(“sDGsdgdSH”);
干部组干部组=新干部组();
设置域1(“Sfsdhsh”);
队形内部队形内部=新队形内部();
队形内部设置图像队形内部(“SDGHGfhdgnhd”);
Previsionel_missions_9 Previsionel_missions_9=新的Previsionel_missions_9();
Previsionel_missions_9.setActivite_11(“DSgSGD”);
Previsionel_missions_6 Previsionel_missions_6=新的Previsionel_missions_6();
Previsionel_missions_6.setActivite_11(“DSgSGD”);
Previsionel_missions_4 Previsionel_missions_4=新的Previsionel_missions_4();
Previsionel_missions_4.setActivite_11(“DSgSGD”);
岗位能力岗位能力=新岗位能力();
职位能力。任命主管(以下简称“DSGGSGDSFHFHDF”);
Systeme_dinformation Systeme_dinformation=新系统信息();
系统信息。设置内部和外部集中(“QSFQGE”);
Contexte_enterprise Contexte_enterprise=新Contexte_enterprise();
contexte_enterprise.setHistorique_enterprise(“DhfdHdhqjqjsfj”);
演示文稿\企业演示文稿\企业=新演示文稿\企业();
介绍企业地址(“尤拉胡普街”);
CV=新CV();