I have an app where I am updating specific rows within a a4j:repeat (thanks to sergey for pointing me in the right direction). It works great if I use the row index, but I would like to have the rowKey be the primary id of the object. This is how I would expect it to work, but it doesnt:
<a:repeat value="#{emailBean.emailList}" id="emailList" ajaxKeys="#{emailBean.reRenderRowKeys}" var="email" rowKey="#{email.id}"> <h:outputText id="updateMe" value="#{emailBean.text}" /> </a:repeat>
No, not this way. rowKey is a property of org.ajax4jsf.ajax.repeat.ExtendedDataModel:
http://tinyurl.com/27uaqp
So, you need to have the value of the a:repeat extends this class. After that you will be able to redefine the rowKey there.