1128

Capítulo 26 Aplicaciones Web: parte 1

En las líneas 78 a 82 se defi ne un componente 

Grupo de botones de selección

 de la clase 

RadioButton-

Group

, el cual proporciona una serie de botones de opción, de los cuales el usuario sólo puede seleccionar uno. 

Al igual que 

Lista desplegable

, un 

Grupo de botones de selección

está enlazado a un objeto 

SingleSelectOp-

tionsList

. Para editar las opciones, haga clic con el botón derecho del ratón en el componente y seleccione 

Confi gurar opciones predeterminadas

. Al igual que la lista desplegable, el IDE genera el constructor del objeto 

SingleSelectOptionsList

 automáticamente y lo coloca en el método 

_init

 de la clase de bean de página.

El último control Web en la fi gura 26.17 es un 

Botón

 (líneas 83 a 85), un componente JSF de la clase 

Button

que desencadena una acción cuando es oprimido. Por lo general, un componente 

Botón

se asigna a un elemento 

input

de XHTML, en donde su atributo 

type

 se establece en 

submit

. Como dijimos antes, al hacer clic en el 

botón

Registro

 en este ejemplo no se produce ninguna acción.

26.6.2 Validación mediante los componentes de validación y los validadores 
personalizados

En esta sección presentamos la 

validación

 de formularios. La validación de la entrada del usuario es un importan-

te paso para recolectar la información de los usuarios. La validación ayuda a evitar los errores de procesamiento 
debido a que los datos de entada del usuario estén incompletos, o tengan un formato inapropiado. Por ejemplo, 
puede realizar la validación para asegurar que se hayan completado todos los campos requeridos, o que un cam-
po de código postal contenga exactamente cinco dígitos. Java Studio Creator 2 proporciona tres componentes 
de validación. Un 

Validador de longitud

 determina si un campo contiene un número aceptable de caracteres. El 

Validador de intervalo doble

 y el 

Validador de intervalo largo

 determinan si la entrada numérica se encuentra 

dentro de intervalos aceptables. El paquete 

javax.faces.validators

 contiene las clases para estos validadores. 

Studio Creator 2 también permite la validación personalizada con métodos de validación en el archivo de bean 
de página. El siguiente ejemplo demuestra la validación mediante el uso de un componente de validación y de la 
validación personalizada.

Cómo validar los datos de un formulario en una aplicación Web

El ejemplo en esta sección pide al usuario que introduzca su nombre, dirección de e-mail y número telefónico. 
Después de que el usuario introduce los datos, pero antes de que éstos se envíen al servidor Web, la validación 
nos asegura que el usuario haya introducido un valor en cada campo, que el nombre introducido no exceda a 30 
caracteres y que la dirección de e-mail y el número telefónico se encuentren en un formato aceptable. En este 
ejemplo, (555) 123-4567, 555-123-4567 y 123-4567 se consideran números telefónicos válidos. Una vez que se 
envían los datos, el servidor Web responde mostrando un mensaje apropiado y un componente 

Panel de cua-

drícula

que repite la información enviada. Observe que una aplicación comercial real, por lo general, almacena 

los datos enviados en una base de datos o en el servidor. Nosotros simplemente enviamos de vuelta los datos a la 
página, para demostrar que el servidor recibió los datos.

Creación de la página Web

Esta aplicación web introduce dos componentes JSF adicionales: 

Etiqueta

 y 

Mensaje

, de la sección de componentes 

Básicos

 de la 

Paleta

. Cada uno de los tres campos de texto debe tener su propia etiqueta y su propio mensaje. Los 

componentes

Etiqueta

 describen a otros componentes, y se pueden asociar con los campos de entrada del usuario 

si se establece su propiedad 

for

. Los componentes 

Mensaje

 muestran mensajes de error cuando falla la validación. 

Esta página requiere tres componentes 

Campo de texto

, tres componentes 

Etiqueta

 y tres componentes 

Mensaje

,

así como un componente 

Botón

 para enviar los datos. Para asociar los componentes 

Etiqueta

y

Mensaje

con sus 

correspondientes componentes 

Campo de texto

, mantenga oprimidas las teclas 

Ctrl yMayús, y después arrastre la 

etiqueta o mensaje hacia el 

Campo de texto

apropiado. En la ventana 

Propiedades

, observe que la propiedad 

for

de cada 

Etiqueta

 y 

Mensaje

se encuentra establecida con el componente 

Campo de texto

 apropiado.

También es conveniente agregar un componente 

Texto estático

 para mostrar un mensaje de éxito en la vali-

dación al fi nal de la página. Establezca el texto en 

"Gracias por enviar sus datos. <br/> Recibimos la 

siguiente información:"

 y cambie el 

id

 del componente a 

textoResultado

. En la ventana 

Propiedades

,

desactive las propiedades 

rendered

y

escape

 del componente. La propiedad 

rendered

 controla si el componente 

se mostrará la primera vez que se cargue la página. Al establecer 

escaped

en

false

, el navegador podrá recono-

cer la etiqueta 

<br/>

, de manera que pueda empezar una nueva línea de texto, en vez de mostrar los caracteres 

"<br/>"

en la página web.

26_MAQ_CAP_26_Deitel.indd1128

5/8/084:15:29PM