A few remarks about your questions :
- Using JSTL loop in JSF is not recommended since it's not managed in JSF lifecycle. Using facelets
ui:repeat
is the good practice - Seam 3 is deprecated, you should avoid using it as you won't have any support if the problem comes from here.
You have two solutions (by order of preference) :
- Switch to JSF 2.2x (and CDI 1.1) which integrates native CDI compliant
@ViewScoped
. You can easily do this by using JBoss Wildlfy 8 or Oracle Glassfish 4 servers. - If you cannot switch JSF, forget Seam Faces and switch to Deltaspike (the descendant of Seam 3 and CODI). It provides a CDI scope for the JSF
@ViewScoped
But in both case, try to get rid of JSTL in your JSF pages, it is a source of a lot of strange issues.