Comment puis-je passer la ligne sélectionnée à commandLink à l'intérieur de dataTable ou ui:repeat?

Je suis l'aide de Primefaces dans un JSF 2 de la demande. J'ai un <p:dataTable>, et au lieu de sélectionner des lignes, je veux que l'utilisateur soit en mesure d'exécuter directement des différentes actions sur des lignes individuelles. Pour cela, j'ai plusieurs <p:commandLink>s dans la dernière colonne.

Mon problème: comment puis-je passer une ligne de code à l'action lancé par la commande lien pour que je sache à quelle ligne pour agir sur? J'ai essayé d'utiliser un <f:attribute>:

<p:dataTable value="#{bean.items}" var="item">
    ...
    <p:column>
        <p:commandLink actionListener="#{bean.insert}" value="insert">
            <f:attribute name="id" value="#{item.id}" />
        </p:commandLink>
    </p:column>
</p:dataTable>

Mais il donne toujours 0 - apparemment, la ligne de la variable f n'est pas disponible lorsque l'attribut est affiché (il fonctionne lorsque je utiliser une valeur fixe).

Quelqu'un a une autre solution?