8

I use <c:foreach> in my jsf app to iterate over a list of people. I don't use <ui:repeat> because every person has its own tab (primefaces). JSF hero 'BalusC' already helped my out on this one link. Now I tried to save (postback) the data. This doesn't work with <c:forEach>, the approriate setter of the Person object gets never called. With <ui:repeat> it works. Obviously I haven't grasped the difference between the two tags so I would appriciate some enlightenment.

Thanks

Marcel

Community
  • 1
  • 1
Marcel Menz
  • 1,075
  • 7
  • 17
  • 25

2 Answers2

8

<c:forEach> does not build JSF tree nodes on the server. You can see this directly in the html, the inputs do not have the usual long and distinct id="j_12:customerTabPanel:j_34:customerName".

Please, read this:

https://rogerkeays.com/jsf-c-foreach-vs-ui-repeat

Roger Keays
  • 3,117
  • 1
  • 31
  • 23
mcosta
  • 138
  • 5
6

<c:***> tags are build-time tags, as <ui:***> are rendered-time tags. To get the difference between these two concepts, I recommand you to read the two links below:

Roger Keays
  • 3,117
  • 1
  • 31
  • 23
Romain Linsolas
  • 79,475
  • 49
  • 202
  • 273