ZK nos permite trabajar con patrones MVC y MVVM.
Quienes vienen de JSF están acostumbrados a manipular código cliente-servidor con EL, por lo tanto ZK nos permite hacer alunas cosas similares.
Por ejemplo, un evento onClick puede estar asociado directamente al método del JavaBean controlador.

El problema lo encontramos cuando iteramos y queremos enviar algún parámetro (ambas cosas son diferentes).

a) Iterar con <zk:forEach /> nos exige utilizar EL al estilo  ${each.orden}
b) Cuando enviamos al servidor, nos exige utilizar @command(‘funcion’,param=each) que no es lo mismo que el anterior. En pocas palabras ambos each no son el mismo objeto.

Solución:

<button  onClick="@command('funcion',paramID=self.getAttribute('paramID'))" >
    <custom-attributes paramID="${each.id}"/>
</button>

Esta solución simplemente muestra como obtener el valor de each dentro de un forEach para enviarlo a un @Command del servidor.

Anuncios