JSF - f: validateRegex

f: la etiqueta validateRegex se usa para validar un valor de cadena en un formato requerido.

Etiqueta JSF

<f:validateRegex pattern = "((?=.*[a-z]).{6,})" />

Atributos de etiqueta

S. No Atributo y descripción
1

pattern

Patrón de formato

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 Cree result.xhtml en el directorio webapps como se explica a continuación.
4 Cree UserData.java como un bean administrado en el paquete com.tutorialspoint.test como se explica a continuación.
5 Compile y ejecute la aplicación para asegurarse de que la lógica empresarial funcione según los requisitos.
6 Finalmente, compile la aplicación en forma de archivo war e impleméntela en Apache Tomcat Webserver.
7 Inicie su aplicación web utilizando la URL adecuada como se explica a continuación en el último paso.

UserData.java

package com.tutorialspoint.test;

import java.io.Serializable;

import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;

@ManagedBean(name = "userData", eager = true)
@SessionScoped
public class UserData implements Serializable {
   private static final long serialVersionUID = 1L;
   private String password;
   
   public String getPassword() {
      return password;
   }
   
   public void setPassword(String password) {
      this.password = password;
   }   
}

home.xhtml

<?xml version = "1.0" encoding = "UTF-8"?>
<!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"   
   xmlns:h = "http://java.sun.com/jsf/html"
   xmlns:f = "http://java.sun.com/jsf/core">
   
   <h:head>
      <title>JSF tutorial</title>			
   </h:head>
   
   <h:body>    
      <h2>h:validateRegex Example</h2>
      <!-- password contains lower case letters only and.
      length of the password should be greater than 6. -->
      
      <h:form>
         <h:inputSecret id = "passwordInput" value = "#{userData.password}" 
            label = "password" >
            <f:validateRegex pattern = "((? = .*[a-z]).{6,})" />
         </h:inputSecret>			
         <h:commandButton value = "submit" action = "result"/>
         <h:message for = "passwordInput" style = "color:red" />
      </h:form>
   
   </h:body>
</html>

result.xhtml

<?xml version = "1.0" encoding = "UTF-8"?>
<!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"
   xmlns:f = "http://java.sun.com/jsf/core"    
   xmlns:h = "http://java.sun.com/jsf/html">
   
   <h:head>
      <title>JSF Tutorial!</title>   
   </h:head>
   
   <h:body>
      <h2>Result</h2>
      <hr />     
      Password: #{userData.password}     
   </h: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.

Ingrese un valor inválido. Lo siguiente será la salida.

Introduce un valor valido. Lo siguiente será la salida.