Iluminando los rincones del sin saber

Conocimientos liberados sólo para copiar y pegar, aprender y compartir es lo importante

Tip Java: commandLink dentro de un dataTable

Problema: Están trabajando con Java (JEE) y tecnologías basadas en el framework JavaServer Faces (En este caso estoy utilizando ICEFaces, pero la lógica es igual para RichFaces, PrimeFaces, etc) y en una tabla quieren acceder a un detalle por medio de un link a cada uno de los registros.

Solución: Del lado de la vista, dentro de la columna donde declaran el link deben de enviarle un parámetro al bean (pueden enviarle todos los parámetros que necesiten).

<ice:column>
  <ice:commandLink value="Ver Detalle" actionListener="#{BeanRespaldo.verDetalle}">
    <f:attribute name="id" value="#{instanciaTabla.Identificador}"/>
  </ice:commandLink>
</ice:column>

Del lado del bean para leer el parametro (“reglaSel”)

public void verDetalle(ActionEvent e) {
  String Identificador = e.getComponent().getAttributes().get("id").toString();
  //resto de la lógica del negocio
}

instanciaTabla es la variable con la que van a recorrer la lista con la que llenarían su tabla.  <ice:dataTable id=”tbl1″ value=”#{BeanRespaldo.tblDatos}” var=”instanciaTabla”>

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: