Search code examples
jsf-2uirepeat

UI:repeat does not increment the id of table row


In JSF 2 (SUN RI ) UI:repeat does not increment the id of table row when new rows are added. It does display all rows on browser. However, view source reveals only one row.

<ui:repeat id="repeat1" value="#{b.items}" var="itemBean" varStatus="status1">
<table>
 <ui:repeat id="repeat2" value="#{a.locations}" varStatus="status2" var="loc">
  <tr>
   <td> <h:inputText    id="date" size="10" maxlength="10"</td>
  </tr>
 </ui:repeat>
</table>
</ui:repeat>

id - > myForm:repeat1:0:repeat2:0:date

I am expecting it to be myForm:repeat1:0:repeat2:1:date for a new row added. But am getting same row id myForm:repeat1:0:repeat2:0:date.


Solution

  • This is recognizeable as one of the older Mojarra bugs. Upgrade to the latest Mojarra which is currently 2.0.9 / 2.1.9.

    By the way, the name "Sun RI" does not exist anymore since version 1.2_08 at December 2007. It has become "Mojarra". The name "Sun RI" was never been used on JSF 2.