Ejemplo de aplicación web con NetBeans y Visual Web JavaServer Faces
Autor: Luciano | Categoría: IDEs, Java, Programación
Leyendo acerca de las bondades del plugin Visual Web Pack para NetBeans, me he decido a desarrollar un pequeño ejemplo y publicar paso a paso mi experiencia.
El ejemplo consiste en una aplicación, una especie de pseudo-login (pues el usuario y password serán hardcodeados), pero la idea central es mostrar el uso de Visual Web JavaServer Faces en NetBeans.
Para empezar, en mi ejemplo utilicé NetBeans 6.1, aunque no es excluyente pues en el ejemplo original del cual me basé lo hacía NetBeans 5.5. Lo importante reside en tener instalado el plugin de NetBeans Visual Web JSF, puedes ver si lo tienes instalado o instalarlo o actualizarlo desde el menú la opción Plugins del menú Tools.
Ahora bien, manos a la obra:
- Una vez abierto NetBeans, seleccionar la opción New Project del menú File. En el primer diálogo que se abre, seleccionar de la categoría Web el tipo de proyecto Web Application.
- En el siguiente paso, ingresar el nombre del proyecto y dar Next:

- Luego, nos solicita el Server. En mi caso, por default tenía seleccionado Apache Tomcat 6.0.16, me limité en dar Next.
- En el último paso nos solicita el framework a utilizar, tildamos Visual Web JavaServer Faces y finalizamos:

- Finalizado el asistente, veremos que nos crea unas cuantas carpetas en la estructura del proyecto y por defecto una página Page1.jsp. En la misma, en tiempo de diseño insertamos los elementos de las paleta y modificamos algunas propiedades desde el cuadro de Properties:
- Un Label con un título
- Un Text Field y un Password Field con los id textUsuario y textContraseña. En la propiedad label de ambos podemos ingresar Usuario y Contraseña, para que queden bien rotulados. Además, para ambos, tildaremos la propiedad required.
- Un Button, del cual modificamos las propiedades id (con el valor buttonLogin) y text (con el texto Login)

- Para finalizar la edición de la página principal, haciendo clic con el botón derecho sobre cada Text Field seleccionamos del menú contextual la opción Add Binding Attribute, para poder más adelante acceder desde el código a tales objetos.
- Luego, haciendo clic derecho sobre cualquier área vacía de Page1.jsp seleccionamos la opción Page Navigation del menú contextual:

- Inmediatamente se abrirá una nueva solapa faces-config.xml donde vemos ubicada una representación de la página con la que estuvimos trabajando, conteniendo la misma el objeto buttonLogin:

- Haciendo clic derecho sobre el área de diseño, seleccionamos New File del menú contextual y luego de la categoría JavaServer Faces, Visual Web JSF Page:

- Ahora veremos que junto a Page1.jsp aparece Page2.jsp (si es que dejamos el nombre por defecto propuesto por el asistente). Haciendo clic sobre buttonLogin de Page1.jsp y manteniendo apretado el botón izquierdo del mouse trazamos una línea hasta Page2.jsp. Veremos que se crea un enlace entre ambas páginas, haciendo doble clic sobre en enlace, cambiamos el nombre por defecto del mismo (case1) por success:

- En Page2.jsp, insertamos un label con cualquier mensaje amistoso que indique que el login ha sido exitoso.
- De la misma forma que creamos una página para el login exitoso (success) crearemos una nueva página (Page3.jsp) con un mensaje de "Nombre de usuario y/o contraseña incorrecta" y un hyperlink para volver:

- Volviendo al esquema del faces-config.xml, creamos otro enlace desde el botón Login hacia Page3.jsp, cambiando el nombre por defecto (case1) por failure.

- Para finalizar la configuración del esquema de navegación de páginas, creamos un nuevo enlace desde el elemento hyperlink1 (si es que no le cambiamos el id por defecto) de Page3.jsp con Page1.jsp. Además, si queremos podemos reorganizar un poco la distribución de las páginas:

- Volviendo al diseño de la página de ingreso (Page1.jsp) hacemos doble clic sobre buttonLogin y escribimos la porción de código que valide usuario y contraseña. Como dijimos en un principio, los valores para los mismos estarán hardcodeados, nada de base de datos aun
public String buttonLogin_action
() {
if (textUsuario.
getText().
equals("demo") && textContraseña.
getText().
equals("demo")) {
return "success";
} else {
return "failure";
}
}
- Para finalizar solo queda correr la aplicación, seleccionando la opción Run Main Project del menú Run, o simplemente presionando F6. Esto puede demorar un tiempo, dependiendo de tu equipo, pues NetBeans inicia el servidor de aplicaciones (Apache Tomcat en mi caso), hace el deployment de la aplicación y finalmente abre nuestro navegador por defecto con la página que diseñamos.
- Con el navegador abierto y la página de login en frente, para probar de que sirvió setear la propiedad required del Text Field y el Password Field apretamos directamente el botón Login. Veremos como nos marca en rojo los campos requeridos y nos lo vuelve a solicitar:

- Luego, ingresaremos usuario y contraseña, pero equivocando uno o ambos valores:

- Finalmente, ingresamos usuario y contraseña correcta (demo demo):

Si sigues mis pasos, no deberías tener problemas, pues el ejemplo publicado no es más que el paso a paso de lo que yo hice en mi PC de desarrollo. De todas formas, ante cualquier duda o inconveniente, me comentas y vemos que se puede hacer. Para la próxima, nos meteremos con las bases de datos.
Basado en el demo NetBeans Visual Web Pack
55 Respuestas para "Ejemplo de aplicación web con NetBeans y Visual Web JavaServer Faces"
excelente tutorial
Excelente tutorial. pero quisiera saber si es aconsejable desarrolar aplicaciones con JSF ya q al correr la apli se demora resto en cargar.
He hecho lo mismo que tu y funciona bien, pero no puedo cerrar la sesion, como se hace?, es decir pongo un boton y lo redirecciono a Page1 pero si oprimo la flecha de regresar del navegador me muestra de nuevo los datos, se supone que cuando cierras sesion no puedes haces esto, como en hotmail
Excelente tu tutorial, de verdad te felicito, me has ayudado a entrar en el desarrollo bajo este ambiente, si me dices donde están tus demás tutoriales me sigo…..
En especial el que mencionas para trabajar con bases de datos.
Me gusta el tutorial pero me podría decir por favor cómo hago para cerrar sesión??
Muy bueno el material, si puede subir mas sobre inisios de session y conexion a base de datos con netbeans 6.1
buen material ,directamente se copia el codigo? por que al copiarlo me salta error, o hay que definir alguna variable.soy nuevo en esto!.
Excelente tutorial, me sumo a la peticion de subir sobre inicios de sesion con conexion a bases de datos y si tienes alguna idea de como cerrar sesiones nos encanataria verlo.
muy buen tutorial esta barbaro me gustaria si podes explicar como levantar el tomcat con el netbeans porque estuve renegando todo el dia y no hay forma lo agrege desde la ventana servers del ide y no pasa nada, le agrege las libs al tomcat y tampoco quede frito
men te recomiendo si usas windows que bajas el netbeans que tiene ya el tomcat y el glass fish de lo contrario tendras muchos problemas saludos
Sugiero lo mismo que RCC, yo he tenido mil y un problemas, hasta que finalmente instalé el paquete de NetBeans que incluye el Tomcat y el Glass Fish.
Saludos.
Excelente Luciano, como siempre. Estoy deseando de ver el tutorial de acceso a bases de datos.
Saludos
Excelente !!
Muy buen tutorial.
Gracias..!!
demasiado buenO!
en serio tanks!
y como sige con la base de datos?
Muy bueno, muchas gracias, pero tengo la misma pregunta que jacky ahora como valido el ingreso con Base de Datos.
Gracias
Hola soy nuevo , al ingresar este codigo me sale errorers…como puedo solucionarlo??
public String buttonLogin_action() {
if (textUsuario.getText().equals(“demo”) && textContraseña.getText().equals(“demo”)) {
return “success”;
} else {
return “failure”;
}
}
Ya solucione el problema…al copiar el codigo salio en mi netbeans:
& solo se tiene que cambiar por &&
Estuvo bueno ..,
public String buttonLogin_action() {
String resp=”"
if (textUsuario.getText().equals(”demo”) && textContraseña.getText().equals(”demo”)) {
resp= “success”;
} else {
resp= “failure”;
}
return resp;
}
hola me gustaria que aguien me ayudara a generar una pagina web wn forma dinamica, lo que pasa es que estoy trabajando con Visual Web Pack de NetNeans 6.0 y tengo cargar link en esa pagian a de acuerdo a la cantidad de palabras que encuentre…osea que tengoiq ue hacer lo mismo que sucede con Google que sus en sus paginas tienen solo 10 linck y sy es que sobrepasa puej los demas pasan a otra pagina ..
no se si es que alguien me puede ayudar con algun ejemplo
les quedare muy agradecido
chauuu
excelente y muy facil, solo m gustaria q m ayudaran hacer lo mismo pero con uso de base de datos utilizo mysql gracias
aora me gustaria q me
dijeras donde puedo ver la forma
enque se conecta a sql o my sql y añadir datos espero tu respuesta
gracias
muy buen ejemplo
es de mucha ayuda
Buen tuto, no sabras alguna pagina donde haya unos mas complicados, es decir con conecciones a la base de datos.
Hola, buen ejemplo.
podrias hacer uno con Table componet y llenado de ListBox.
Estaria bueno que en este tutorial agregues las librerias que se necesitan, ya que no compila por ese motivo creo.. uso Netbeans 6.5 gracias
Está bueno el tutorial, pero necesito saber como hacerlo validando el user y password con los que tengo en la base de datos.
muy buen tutorial, pero deseo saber como guardo la informacion de los texfield para q me aparezcan en la base de datos, si estos texfiel estan en una pagina .jsp, gracias
Muy bueno,… Pero esto no sirve si no tiene coneccion a la base de datos, Acces o MySQL.
Hola es un excelente tutorial, pero yo lo probe una vez y no hubo ningo problema, pero cuando lo que hice abrir nuevamete no me aparecio el diseño de la pagina..
Por que sera???
La verdad muy bueno corto, simple pero muy puntual.
TENGO UN PROBLEMA ESPERO ALGUIEN PUEDA AYUDARME HICE TOSO LOS PASOS EXEPTO ESTA PARTE
Para finalizar la edición de la página principal, haciendo clic con el botón derecho sobre cada Text Field seleccionamos del menú contextual la opción Add Binding Attribute, para poder más adelante acceder desde el código a tales objetos.
EN EL MENU QUE ME APARECE NO EXISTE LA OPCION ADD BINDING ATTRIBUTE, Y POR ESO NO CORRE estoy con netbeans6.0.1
ayuda por favor
grasias
grasias esta todo bien, …..y ya salio el ejemplo con conexion a DB
grasias
disculpen no saben donde encontrar mas tutoriales de como usar los componentes de la paleta del netbeans 6.7 del visual web java serverfaces
Muchas gracias, no te imaginas cuanto me sirvio ese ejemplo, lo estaba necesitando urgente.
Muy buena el tutorial, pero como hago para modificar datos de la BD mediante objetos de net beans por ejemplo con una tabla. Gracias
oye descargue el visual web jsf pero no pasa nada en el frameworks en el momento de crear el proyecto no tengo esta opcion y esta instalado
hay algo q pueda hacer ho algun otro metodo parecido
espero un poco de ayuda gracias
por cierto mi sistema operativo es mac y netbeans 6.7 tal vez sea un poco de referencia para q me puedan ayudar
amigo buen tutorial… me puedes ayudar como llenar un combo o una lista con datos de una tabla, nos puedes ilustrar un ejemplo te agradeceria mucho..
Gracias amigo, buen trabajo… Un abrazo
Alguien me puede decir si ya esta el tutorial que utiliza bases de datos? y pasarme el link? Muchas Gracias excelente tutorial para iniciar =)
Mil gracias por la informacion, muy completa !!!
esta bien tu tutorial e = ya cheqe el swf del otro tambien esta muy bien , y la explicaion de paso paso es congruente
por favor necesito un ejemplo con base de datos sql server 2005
Exelente¡¡ pero porfa a hora con base de datos…
[...] Ejemplo de aplicación web con NetBeans y Visual Web JavaServer Faces [...]
bueno esta muy interesante este aporte muchas gracias!!! en este momento me gustaria saber donde puedo conseguir material para realizar diferentes acciones con este framework. por ejemplo aplicar menu, radio butons, conexiones a DB etc…..
Gracias x la información, excelente tutorial. sabéis en donde puedo encontrar información sobre el uso de los distintos componentes o de alguna aplicación de ejemplo que me pueda ilustrar dicho manejo. gracias
Muy bueno el tutorial, me sirvió bastante. En este momento, me gustaría estudiar las diversas etiquetas de la paleta, sabéis de algun link donde pueda encontrar esta información o de alguna aplicación de ejemplo(si es junto con hibernate mejor), para ver su uso. espero q me ayudeis.
favor donde puedo descargar el video con base de datos.
favor quien me puede ayudar tengo error al agregar el pedaso de codigo para validar usuario y contrasena, me aparece subrayado… este pedaso:
if (textUsuario.getText().equals(“demo”) && textContraseña.getText().equals(“demo”))
y me sale un msj q dice q no esta definido el simbolo en ejemplovisualwebapp.pages1 lo mismo con la contrasena.
gracias agradezco me puedan colaborar
Fernando:
Aquí creo que pueden llegar a ser dos problemas, que no hayas renombrado los jTextField y jPassword con los nombres “textUsuario” y “textContraseña” respectivamente.
La otra podría ser un “Fix Imports”…
Yo tengo un problema:
if(txt_nom.getText() == “DARKFALCO”) && (txt_pass_hide.getPassword().equals(“12345″)))
Me sale uno o dos errores:
Replace with Arrays.equals
y me dice que no se pueden comparar boleanos con char[] =/… alguien ha usado el .getPassword?
yo tengo un problema, me dejaron de trabajo sacar un calculo sobre el precio de un producto, añadir sus accesorios, pagar al credito o contado, si es al credito tres tipos de uotas, 6 meses, 12 y 18, con interes del 5, 6 y 7% respetivamente, sacar igv, monto de la cuota, costo total, etc, no puedo resolverlo, alguien me puede orientar.
Saludos a todos. tengo un problemita soy nuevo en esto. Estoy netbeans 5.5.1 con VisualWeb(entorno grafico), estoy utilizando DropDownList los carga perfectamente pero al recuperar los datos me recupera bien en un ResulSet y de ahi quiero hacer q se seleccione el dato que se guardo en base de datos (SQLServer2008) si alguien tiene un ejemplo se lo agradecere gracias.
ola a todos … por favor kisiera ke me digan de donde consigo el plugin para instalar el visual web javasever faces … o si alguien lo tiene pueda mandarmelo a mi correo
Hola, muy bueno el tutorial, felicitaciones, mi preguanta es:
¿Donde puedo descargar el framework Visual Web Java Server Faces para netbeans 6.8 o 6.9?
De nuevo gracias y espero su respueta
Comentarios: