, ,

There is a issue with command button in ui:repeat tag.

If command button is nested in a ui:repeat tag, command button or link will not work until the iterating bean/List is in view scope or bigger scope.

solution is to set the iterating list should be set in bean with view scope or higher.

It is a fundamental part of the JSF lifecycle that the first phase is the View Restore Phase, and that’s the same with/without Facelets.

JSF iteration controls generally maintain a cursor to do their work, and the only way that the cursor can function properly is if the referenced datamodel is in a non-transient scope. For JSF1, that means Session Scope or higher. For JSF2, View Scope or higher.

Took my 6hrs to fix it. So putting it here