2016-08-24 4 views
0

로 accordionPanel var에 나는 코드 XHTML 있습니다 :C : 대해 forEach 페이지의 : 인수

... 
<p:accordionPanel var="mVar" value="#{someBean.someList}" > 
    <p:tab> 
     <f:facet name="title"> 
      <h:outputText value="#{mVar.id} - #{mVar.name}"/> 
      ... 
     </f:facet> 
     <h:panelGrid> 
      ... 
      <c:forEach items="#{someBean.someFunctionReturningList(mVar.id)}" var="mImg"> 
       <h:outputText value="#{mImg}"/> 
      </c:forEach> 
     </h:panelGrid> 
    </p:tab> 
</p:accordionPanel> 
... 

그리고 자바 코드 : 항목이 페이지가있는 기능입니다 때 accordionPanel가 작동하지

public List<String> listAllImagesForCampaign(BigInteger id) { 
    List<String> allImages = new ArrayList<String>(); 
    ... 
    return allImages; 
} 

가 그리고 문제는 mVar.id가 예를 들어 64 일 때 BigInteger id가 값 0을 포함한다는 것입니다. primeface 구성 요소에서 catch 또는 sth 오류가 발생하는 버그가 있습니까?

+1

가능한 복제 [JSF2 Facelets의에서 JSTL은 ... 의미가?] (http://stackoverflow.com/questions/3342984/jstl-in-jsf2-facelets-makes-sense) – Kukeltje

답변

0

c : forEach를 ui : repeat로 변경하면 문제가 해결됩니다. 의

<ui:repeat value="#{someBean.someFunctionReturningList(mVar.id)}" var="mImg"> 
+0

그게 전부 때문에 다 : forEach는 TagHandler이며 p : accordionPanel 전에 처리됩니다. 반면 p : accordionPanel 및 ui : repeat는 구성 요소입니다. https://rogerkeays.com/jsf-c-foreach-vs-u-repeat – tak3shi

+0

'중복'보기 ... – Kukeltje