La entrada JSF2 HTML5 (correo electrónico) no actualiza los modelos
Frecuentes
Visto 372 veces
0
Tengo un problema al considerar actualizar mi backing-bean dentro de un ajax-roundtrip en una aplicación JSF2 si el valor está vinculado a un tipo de entrada html5 = correo electrónico.
En primer lugar, creé un "Html5InputRenderer", para que el tiempo de ejecución de JSF pueda crear el marcado html5 para un , con el fin de escribir
La "magia" central que hace el "Html5InputRenderer es:
markup.replaceAll("type=\"text\"", "type=\"email\"");
dentro del método anulado encodeEnd(..) de javax.faces.renderer.Renderer.
Esta entrada h: se coloca en un formulario y se enriquece con f:ajax:
<h:form id="form"> <f:ajax render="testOut"> <h:inputText id="test" renderedType="email" value="#{testBean.value}" /> </f:ajax> <h:outputText id="testOut" value="#{testBean.value}" /> </h:form>
El atributo 'renderedType' es la sugerencia para el JSF-"Html5InputRenderer" para representar el marcado html5 para h:input
Pruebe el fragmento. No actualizará #{testBean.value} aunque el tiempo de ejecución de JSF invoque un viaje de ida y vuelta ajax.
Pruebe el fragmento eliminando el atributo 'renderedType', todo funciona como se esperaba.
0 Respuestas
No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas ajax html jsf-2 renderer or haz tu propia pregunta.
- bueno, una primera pista es que cuando la salida html es de acuerdo con la especificación html5, no puede ver la cadena ingresada en los valores POST, es una pena (visto a través del módulo de red FireBug). Modificado de esa manera, el tiempo de ejecución Jsf (supongo que la parte de javascript) no reconoce esa entrada Html5 y no permitirá que la cadena ingresada participe en la solicitud ajax saliente :( - Jens Kreidler
- relacionados: balusc.blogspot.de/2012/06/… - Jens Kreidler