La entrada JSF2 HTML5 (correo electrónico) no actualiza los modelos

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.

  1. 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

  2. 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.

  3. 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>
    
  4. El atributo 'renderedType' es la sugerencia para el JSF-"Html5InputRenderer" para representar el marcado html5 para h:input

  5. Pruebe el fragmento. No actualizará #{testBean.value} aunque el tiempo de ejecución de JSF invoque un viaje de ida y vuelta ajax.

  6. Pruebe el fragmento eliminando el atributo 'renderedType', todo funciona como se esperaba.

preguntado el 12 de junio de 12 a las 10:06

- 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 :( -

0 Respuestas

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.