Pregunta

¿Es posible tener múltiples listas de acción en un botón de comando?

Si no, ¿hay alguna forma de evitar esto?

¡Gracias por tu ayuda!

¿Fue útil?

Solución

No, solo puede agregar dos métodos de devolución de llamada del lado del servidor:

  • actionListener y
  • action.

<ice:commandButton action="#{bean.navigateTo}" actionListener="#{bean.doSomething}"/>

actionListener tiene que señalar un método público que devuelve void y toma una acción de acción como argumento. Generalmente se usa para cualquier tarea que no esté relacionada con ninguna lógica de navegación y tenga la ventaja, para proporcionarle el valor antiguo y nuevo (= modificado) del control. Esto tiene sentido particular en los controles de entrada como las casillas de verificación.

action tiene que señalar un método público que devuelve un String sin tomar ningún argumento. El método hará todo lo necesario para navegar, por ejemplo, validación adicional (si no lo ha manejado un validador básico de JSF). El resultado tiene que igualar las reglas de navegación de faces-config.xml.

Eso debería brindarle suficientes posibilidades para manejar múltiples tareas (que supongo que es su razón para tener múltiples ActionListener) dentro de la lógica de su servidor.

Además, si necesita hacer solo algunas tareas del lado del cliente, puede aprovechar varias en las propiedades* JavaScript.

Referencia: COMPONENTES DE ICEFACES Customos Taglib

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top