JSF - h: mensajes

La etiqueta h: messages muestra todos los mensajes en un lugar correspondientes a los elementos de la interfaz de usuario.

Etiqueta JSF

<h:messages style = "color:red;margin:8px;" />

Salida renderizada

Caso: El nombre de usuario ingresado tiene más de 20 caracteres y la contraseña ingresada tiene menos de 5 caracteres.

<ul style = "color:red;margin:8px;"> 
   <li> UserName: Validation Error:  
      Length is greater than allowable maximum of '20' </li> 
   <li> Password: Validation Error:  
      Length is less than allowable minimum of '5' </li> 
</ul>

Atributos de etiqueta

S. No Atributo y descripción
1

id

Identificador de un componente

2

binding

Referencia al componente que se puede utilizar en un bean de respaldo

3

rendered

Un booleano; falso suprime la representación

4

styleClass

Nombre de clase de hoja de estilo en cascada (CSS)

5

for

El ID del componente cuyo mensaje se muestra, aplicable solo al mensaje h:

6

errorClass

Clase CSS aplicada a mensajes de error

7

errorStyle

Estilo CSS aplicado a mensajes de error

8

fatalClass

Clase CSS aplicada a mensajes fatales

9

fatalStyle

Estilo CSS aplicado a mensajes fatales

10

globalOnly

Instrucción para mostrar solo mensajes globales, aplicable solo a h: messages. Predeterminado: falso

11

infoClass

Clase CSS aplicada a mensajes de información

12

infoStyle

Estilo CSS aplicado a mensajes de información

13

layout

Especificación para el diseño de mensajes: tabla o lista, aplicable solo a h: mensajes

14

showDetail

Un booleano que determina si se muestran los detalles del mensaje. Los valores predeterminados son falsos para h: mensajes, verdaderos para h: mensaje

15

showSummary

Un valor booleano que determina si se muestran resúmenes de mensajes. Los valores predeterminados son verdaderos para h: mensajes, falsos para h: mensaje

dieciséis

tooltip

Un booleano que determina si los detalles del mensaje se representan en una descripción emergente; la información sobre herramientas solo se representa si showDetail y showSummary son verdaderos

17

warnClass

Clase CSS para mensajes de advertencia

18

warnStyle

Estilo CSS para mensajes de advertencia

19

style

Información de estilo en línea

20

title

Un título, usado para accesibilidad, que describe un elemento. Los navegadores visuales suelen crear información sobre herramientas para el valor del título

Aplicación de ejemplo

Creemos una aplicación JSF de prueba para probar la etiqueta anterior.

Paso Descripción
1 Cree un proyecto con un nombre helloworld en un paquete com.tutorialspoint.test como se explica en el capítulo JSF - Primera aplicación .
2 Modifique home.xhtml como se explica a continuación. Mantenga el resto de los archivos sin cambios.
3 Compile y ejecute la aplicación para asegurarse de que la lógica empresarial funcione según los requisitos.
4 Finalmente, compile la aplicación en forma de archivo war e impleméntela en Apache Tomcat Webserver.
5 Inicie su aplicación web utilizando la URL adecuada como se explica a continuación en el último paso.

home.xhtml

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

<html xmlns = "http://www.w3.org/1999/xhtml"> 
   <head> 
      <title>JSF Tutorial!</title> 
   </head>
   
   <body> 
      <h2>h:messages example</h2> 
      <hr /> 
      
      <h:form> 
         <h:panelGrid id = "panel" columns = "2" border = "0" cellpadding = "10"  
         cellspacing = "1">   
            <h:outputLabel value = "Enter Username" /> 
            
            <h:inputText  id = "username"  size = "20" label = "UserName"  
               required = "true"> 
               <f:validateLength for = "username" minimum = "5" maximum = "20" />    
            </h:inputText>         
            <h:outputLabel value = "Enter Password" /> 
            
            <h:inputSecret id = "password" size = "20" label = "Password"  
               required = "true" redisplay = "true" > 
               <f:validateLength for = "password" minimum = "5" maximum = "10" />  
            </h:inputSecret>         
            <h:commandButton id = "submit" value = "Submit" action = "result"/> 
         </h:panelGrid> 
         <h:messages style = "color:red;margin:8px;" /> 
      </h:form> 
   
   </body> 
</html>

Una vez que esté listo con todos los cambios realizados, compilemos y ejecutemos la aplicación como lo hicimos en JSF - Capítulo Primera aplicación. Si todo está bien con su aplicación, esto producirá el siguiente resultado: