UI Interfaces: Repeat Doesn't Work

I am trying to create a accordionPanel in Primefaces. And I'm trying to create this using ui:repeat , so I can dynamically create panel tabs. But somehow my code is not working, accordionPanel is empty and does not have tabs.can, anyone can give me a reason or tell me how to do it.

here is my bean.

 @ManagedBean(name = "divisionList") public class Divisions implements Serializable { private List<String> divStrings; public List<String> getDivStrings() { return divStrings; } public Divisions(){ divStrings=new ArrayList<String>(); divStrings.add("Division A") ; divStrings.add("Division B"); } } 

and in my xhtml:

 <p:accordionPanel > <ui:repeat value="#{divisionList.divStrings}" var="divis"> <p:tab title="#{divis}"> Content </p:tab> </ui:repeat> </p:accordionPanel> 

EDIT:

But when he prints like this, his job is: O

 <ui:repeat value="#{divisionList.divStrings}" var="divis"> <h:outputText value="#{divis}" /> </ui:repeat> 
+6
source share
2 answers

No problem with your ui: repeat, donโ€™t wrap it in empty

 <p:accordionPanel > 

Or remove uirepeat and fill in your accordionPanel value

Do it like

 <p:accordionPanel value="#{test.divStrings}" var="divis" > <p:tab title="#{divis}"> Content </p:tab> </p:accordionPanel> 
+11
source

Instead of initializing the list in the constructor, try initializing it in the annotated @PostConstruct method.

  @PostConstruct public void init(){ divStrings=new ArrayList<String>(); divStrings.add("Division A"); divStrings.add("Division B"); } 
0
source

All Articles