2015-09-06 38 views
1

我試圖有兩個<c:foreach>,其中一個顯示不同的日子,每天有8行與3個不同的輸入框。h:inputText裏面c:forEach不保存列表中的元素

下面是代碼

<h:form> 
    <c:forEach begin="0" end="#{treningNovi.dana-1}" varStatus="loop"> 
     <c:forEach varStatus="j" begin="0" end="7"> 
      <h:inputText id="set" value="#{treningNovi.set[j.index+(loop.index*8)]}"/> 
     </c:forEach> 
    </c:forEach> 

    <h:commandButton value="Spremi" 
        action="#{treningNovi.SpremiVjezbe}" 
        styleClass="btn btn-primary" /> 
</h:form> 

首先foreach代表天,第二foreach增加的inputText字段。

這裏是我的bean類

@ManagedBean(name="treningNovi") 
public class TreningNovi { 

    private List<Integer> set; 

    @PostConstruct 
    public void initList() { 
     set = new ArrayList<Integer>(); 
    } 

    public String SpremiVjezbe() { 
     System.out.println(set); 
     return "index"; 
    } 

    public List<Integer> getSet() { 
     return set; 
    } 
} 

出於某種原因,它不正確保存元素列表,列表是按按鈕Spremi後空。任何人都知道解決方案謝謝

注:我嘗試使用j.index和數字,而不是j.index +(loop.index * 8),但他們都不似乎這樣的工作指標是沒有問題的

而且列表中有List<Integer> set但代碼沒有得到格式正確,我不知道如何解決它

回答

0

初始化值與@PostConstruct值,它應該工作。現在它試圖向不存在的元素插入值(如set [5],但列表大小爲0,因此無法完成)。

相關問題