tutorial template que etiquetas espaƱol ejemplo define componentes html jsf custom-attributes renderer

html - que - templates jsf primefaces



Los atributos de etiqueta HTML personalizados no son renderizados por JSF (1)

Esto es por diseño. Solo puede especificar atributos que sean supported con el componente JSF mismo (es decir, se enumera en la lista de atributos en la documentación de la etiqueta ). No puede especificar atributos adicionales arbitrarios, todos serán simplemente ignorados.

Hay varias formas de resolver esto:

  1. Si ya está en JSF 2.2+, simplemente especifíquelo como atributo passthrough :

    <html ... xmlns:a="http://xmlns.jcp.org/jsf/passthrough"> ... <h:inputText ... a:autocorrect="off" />

    (Tenga en cuenta que estoy usando xmlns:a lugar de xmlns:p para evitar conflictos con el espacio de nombres predeterminado de PrimeFaces)

    O:

    <html ... xmlns:f="http://xmlns.jcp.org/jsf/core"> ... <h:inputText ...> <f:passThroughAttribute name="autocorrect" value="off" /> </h:inputText>

  2. Utilice OmniFaces Html5RenderKit . Desde la versión 1.5, admite la especificación de atributos personalizados por <context-param> . Ver también el ejemplo de escaparate o Javadoc .

  3. Crea un renderizador personalizado. Puede encontrar varios ejemplos concretos en las respuestas a continuación:

Deseo agregar algunos atributos de etiqueta específicos de iOS a mi formulario de inicio de sesión. Si eché un vistazo a la fuente de mi página web, los atributos autocorrect, autocapitalize y spellcheck no están ahí. ¿Cuál es la razón para esto? Estoy usando JSF 2.x.

<h:inputText id="user-name" forceId="true" value="#{login.username}" style="width:120px;" autocorrect="off" autocapitalize="off" spellcheck="false" />