¿Cómo invocar el método setter cuando se usan métodos con argumentos en componentes UIInput?
Frecuentes
Visto 1,537 veces
2
Antes he usado métodos con argumentos para obtener los valores de un componente en mi página JSF, por ejemplo
<h:dataTable value="#{myBean.getMyList(argument)}">
Sin embargo, ahora necesito el mismo principio, pero usándolo en un atributo de valor de un elemento inputText, por lo que sería más o menos así:
<h:inputText value="#{myBean.getMyValue(argment)}">
El problema es que el segundo método no invocará el método setter, al ejecutar el elemento desde el elemento af:ajax.
¿Cuál sería otra forma de pasar valores a los métodos setter y getter en backingBean?
Muchas gracias.
1 Respuestas
4
De hecho, no es posible establecer un valor en una expresión EL que no represente un getter. tendrías que girar myValue
en un Map<String, Object>
y usa la siguiente notación.
<h:inputText value="#{myBean.myValue[argument]}">
Esto entonces llamará al put()
método en el Map
. Tenga en cuenta que no necesita un setter para myValue
aquí.
contestado el 03 de mayo de 12 a las 20:05
No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas java jsf-2 el mojarra or haz tu propia pregunta.