I can confirm it. You cannot refer to a table or datalist's rowIndexVar in a binding expression; it just cannot be done. No way.

As described here, and as Jeff notes, there is only one set of components used to define a row, not a set of components for each row:
  http://myfaces.apache.org/api/apidocs/javax/faces/component/UIData.html

Regards,

Simon

Jeff Bischoff wrote:
Michael,

 > <rm:statusBar binding="#{BatchController.statusBars[rowIndex]}" ...

If t:dataList is like dataTable, then you can not do this. There will be only one statusBar component created, which will render itself once for each row. Therefore, you can't do a separate binding for each row.

Can anyone who is more familiar with t:dataList confirm/deny my suspicions here?

Regards,

Jeff Bischoff
Kenneth L Kurz & Associates, Inc.

Michael Heinen wrote:
I want to use the rowIndexVar of a dataList in the binding attribute of
a another custom component via EL.

I get always a PropertyNotFoundException for this var.

snippet;

<t:dataList var="batch"

  value="#{BatchController.batches}"

  rowIndexVar="rowIndex"

  layout="simple">

<t:outputText value="Test + #{rowIndex}"/>

<rm:statusBar binding="#{BatchController.statusBars[rowIndex]}" ...


Reply via email to