UIComponnetClassicTagBase used to ensure that IDs on components repeated by
c:forEach are unique. However, Facelets' ComponentHandler has no such code.
If the Id of the repeated component is not specified, a unique Id gets
generated. However, literal Ids are written 'as is', so you may end up with the
id 'id1' repeated n times. This produces invalid HTML.
We understand that literal Ids are not very useful when a component is used
within c:forEach because actual Id value are impossible to predict. However, our
customization layer stores identifies customizations within a document using
literal Id, and customizing a repeated component is a valid use case.