Download Creación de aplicaciones Web utilizando Java Server Faces y

Document related concepts
no text concepts found
Transcript
Creación de Aplicaciones Web utilizando
Java Server Faces y Netbeans con Visual
Web Pack
Alejandro Pieschacón Rueda
Resumen
Abstract
En el diseño y construcción de aplicaciones Web, es cada
día más común el desarrollo de nuevas tecnologías que
permitan una manera fácil y versátil para los diseñadores
de este tipo de aplicaciones.
In the design and construction of web applications it has
become more frequent the development of new
technologies that enable faster and more versatile design
of web applications.
Este artículo ofrece una breve descripción de la
tecnología implementada en Java Server Faces, además de
la implementación de una sencilla aplicación Web
utilizando esta tecnología.
This article offers a brief description of the technology
applied in Java Server faces, plus the overview of the
implementation of the web application using the Java
technology.
Palabras Clave: Java Server Faces, Netbeans, Visual Web
Pack, Aplicaciones Web.
Keywords: Java Server Faces, Netbeans, Visual Web
Pack, Web Applications.
42
Universidad El Bosque - Facultad de Ingeniería de Sistemas
accesses page
INTRODUCCIÓN
El desarrollo de aplicaciones Web es cada día más común
en nuestra sociedad, por lo que la utilización de
tecnologías que permitan el desarrollo de este tipo de
aplicaciones en un menor tiempo posible, de mejor calidad
y eficiencia es cada día más necesario.
Este artículo pretende ofrecer un breve vistazo a la
tecnología Java Server Faces, implementada mediante la
herramienta de desarrollo de aplicaciones Netbeans con
el paquete Visual Web Pack, mediante la descripción
detallada de la implementación de una aplicación sencilla
que integre alguno de los componentes mas comunes de
Java Server Faces y adicionalmente el paquete para
manejo de correos electrónicos JavaMail.
Java Server Faces
El API de Java Server Faces, ofrece un marco de trabajo
estándar, para la construcción de aplicaciones Web. Esta
tecnología provee al usuario con una serie de interfaces
de usuario (UI) prediseñadas y un modelo de eventos para
la comunicación entre las interfaces de usuario y los
objetos que van debajo de la aplicación. [1]
Java Server Faces fue diseñado para ser una herramienta
amigable, para que las herramientas de desarrollo de
software soporten el método de generación de interfaces
de usuario a través de arrastre y pegado (Drag and Drop),
además de permitirle a grupos de terceros, desarrollar
inter faces de usuario adicionales que cualquier
desarrollador de Java Server Faces pueda utilizar.
Los principales componentes del API de Java Server Faces
son:
• Un API y una implementación de referencia para:
representar componentes UI, manejo de eventos,
validación del lado del servidor y conversión de datos;
definir la navegación ent re páginas, sopor t ar
internacionalización y accesibilidad.
• Una librería de etiquetas Java Server Pages (JSP)
personalizadas para dibujar componentes UI dentro de
una pagina JSP. [2]
Estructura de una aplicación Java Server Faces
Las aplicaciones con Java Server Faces, son aplicaciones
Web construidas sobre el marco de trabajo de Java Servlet,
por lo que siguen el mismo esquema empaquetado
general de cualquier otra paliación J2EE.
Como se aprecia en la siguiente figura la interfase de
usuario creado con tecnología Java Server Faces
(representado por myUI) se ejecuta en el servidor y se
renderiza en el lado del cliente.
Browser
HTTP Request
JavaServer
myform.jsp
renders HTML
myUI
HTTP Response
Figura. Esquema Java Server Faces
Tomado de:
http://www.programacion.com/java/tutorial/jsf_intro/1/
Managed Beans
Es un objeto JavaBean que es instanciado por la aplicación
Web con Java Server Faces y almacena ya sea un session
scope, application scope o request scope, lo cuales
cumplen con las siguientes características [3]:
• SessionBean: Este session scope inicia cuando el usuario
accede por primera vez a una página de la aplicación Web
y termina cuando la sesión del usuario termina por tiempo
de inactividad o cuando la aplicación invalida dicha
sesión.
• ApplicationBean: Este application scope inicia cuando
se inicializa la paliación y dura hasta que el servidor la
detiene. Toda la información almacenada en este bean,
esta disponible para toda sesión y solicitud que utilice el
mismo mapa de paliación.
• RequestBean: Este request scope inicia cuando el
usuario envía una solicitud a través de una página y
termina cuando la respuesta esta completamente
entregada, cualquiera que sea la página.
En Java Server Faces, los manager beans contienen
métodos de hacino, los cuales son invocados por el marco
de trabajo del Java Server Faces, en respuesta a la acción
de un usuario o un evento que contenga el código que
realmente manipula el comportamiento del modelo de
información detrás de la aplicación.
JavaMail
Es un conjunto abstracto de APIs que modelan un sistema
de correo, que permite leer, componer y enviar mensajes
electrónicos. Está diseñado para proporcionar acceso
independiente del protocolo para enviar y recibir mensajes
dividiéndose en dos partes:
• Cómo enviar y recibir mensajes independientemente del
proveedor y/o protocolo.
Revista de Tecnología - Journal of Technology • Volumen 6, No. 2, Julio - Diciembre 2007
• La segunda parte habla de lenguajes específicos del
protocolo como SMTP, POP, IMAP, y NNTP [4].
Netbeans con Visual Web Pack
Netbeans es un ambiente integrado de desarrollo para
Java y J2EE, permite crear aplicaciones de consola y
Applets a través de programación icónica basada en
formularios, tiene soporte en tiempo real para depurar
errores, permite integrar los contenedores Web y Motores
de Bases de Datos para el desarrollo de aplicaciones Web.
Es una herramienta versátil que ayuda a mejorar el
desarrollo y se puede tener una orientación de usabilidad
desde el punto de vista del cliente al permitirle visualizar
formularios y demás interfaces del proyecto que se este
desarrollando. [5]
Visual Web Pack, es un paquete adicional de Netbeans,
que permite la integración de componentes Java Server
Faces, para el desarrollo de aplicaciones Web. Es una
herramienta amigable, que utiliza la tecnología Drag and
Drop que facilita y reduce el tiempo de programación en
un tiempo considerable, ofreciendo opciones confiables
en cuando a diseño e implementación de aplicaciones.
Incluye una librería comprensible de componentes Java
Server Faces como Tablas, Calendarios, Árboles, Tab Set,
Carga de Archivos y muchos otros. [6]
Diseño de la aplicación
La aplicación Web que se desarrollara en este artículo
pretende generar un mayor entendimiento a las
tecnologías mencionadas al inicio del ar tículo y
corresponde a la implementación de una minina parte de
lo que la tecnología Java Server Faces tiene para ofrecer.
Manejo y configuración del Software
Por ser una aplicación Web realizada con Java Server
Faces, para su diseño, desarrollo e implementación, se
requieren de las siguientes herramientas y tecnologías de
Software:
• JDK 1.6 o superior, el cual permite la implementación de
cualquier tipo de aplicación en lenguaje Java, este recurso
se encuentra disponible en
http://java.sun.com/javase/downloads/index.jsp, así como
las instrucciones para correspondiente instalación, las
cuales no hacen parte de este artículo.
• Java Sever Faces Components / Java EE Platform, las
cuales se encuentran incluidas en los paquetes 1.2 con
Java EE 5 y 1.1 con J2EE 1.4, estos paquetes así como las
instrucciones de instalación se encuentran disponibles en:
http://java.sun.com/javaee/javaserverfaces/download.ht
ml.
• Apache Tomcat1 5.5 o superior, el cual brinda las
funcionalidades de un servidor de aplicaciones Web. Este
servidor se encuentra disponible en:
http://tomcat.apache.org/, así mismo se encuentra la
documentación necesaria para su instalación e
implementación.
• JavaMail Api 1.4 o superior, este paquete se encuentra
disponible en:
http://java.sun.com/products/javamail/downloads/index.
html.
• Netbeans 5.5 o superior, con el paquete adicional Visual
Web Pack, el cual se encuentra disponible así como las
instrucciones para su instalación en:
Http://www.netbeans.org/products/.
La aplicación como tal es una simple encuesta, en la que se
implementaran algunos de los componentes mas
comunes en el desarrollo de aplicaciones Web y que están
presentes en el paquete de Visual Web Pack de Netbeans
como son: RadioButtons, CheckBox, DropDown List,
TextField, L abels y But tons, adicionalmente se
implementara el uso de JavaMail y los Managed Beans
mencionados con anterioridad en este articulo.
Construcción de la aplicación
La librería JavaMail se utilizara para el envío de las
respuestas seleccionadas en la encuesta, al correo
electrónico digitado por el usuario. En cuanto a los
Scopes, la aplicación creada utilizara un objeto en el
application scope para contar los personas que han
realizado la encuesta, un objeto en el session scope, para
asegurarse que la persona realice la encuesta una vez por
sesión y un objeto en el request scope para almacenar el
correo electrónico al que se enviara el mail con las
respuestas seleccionadas.
Creación del proyecto nuevo:
Una vez se tienen instaladas todas las herramientas de
software necesarias para la implementación de una
aplicación Web, utilizando Java Server Faces y Netbeans
con Visual Web Pack, es posible iniciar la construcción de
una aplicación Web sin problemas, para esto se deben
seguir los siguientes pasos:
1. Inicie el IDE 2 de Netbeans usando la opción adecuada
desde la siguiente lista:
1 Para la implementación de la aplicación descrita en este articulo, se utilizara el
Bundled Tomcat 5.5.17, que viene incluido en el paquete Enterprise de Netbeans,
disponible en: http://www.netbeans.org/products/enterprise/.
2 IDE, siglas en inglés de Integrated Development Environment o Entornos Integrados
de Desarrollo.
43
44
Universidad El Bosque - Facultad de Ingeniería de Sistemas
- Windows. Doble-click al icono de NetBeans ubicado en el
escritorio.
nodo de la página y selecciones Set as Start Page desde el
menú emergente.
- Mac. Doble-click al icono de NetBeans ubicado dentro de
la carpeta de instalación.
Creación de las páginas Web.
- Sistema Operativo Solaris (SPARC y x86 Platform
Editions) y Linux. Navega a el directorio bin de tu
instalación de NetBeans, digite ./netbeans y presione
Enter.
2. Cree un proyecto nuevo escogiendo File > New Project
desde el menú principal. En el panel de categorías,
selecciona Web, y en el panel de proyectos, selecciona
Visual Web Application.
3. Click en Next.
4. Escoja un servidor y una versión de Java EE.
5. Nombre el proyecto como desee y haga click en
finalizar.
El IDE crea el directorio del proyecto dentro de tu
directorio personal por defecto.
6. En la ventana Projects aparecerá el nombre de la
aplicación que acaba de crear, para examinar el proyecto
simplemente basta con desplegar los nodos que aparecen
dentro de cada proyecto, como se muestra en la siguiente
figura.
Las aplicaciones Web utilizan paginas JSP y pages beans,
en lugar de paginas HTML, ya que las paginas JSP,
permiten que el servidor genere respuestas HTML para
que sean desplegadas en el navegador del cliente. La page
bean, contiene la lógica que el servidor ejecuta cuando
genera una respuesta HTML, asi mismo contiene la lógica
que el servidor ejecuta cuando el cliente ha enviado una
página.
Para la aplicación de este articulo se utilizaran dos
paginas Web, la primera se llama Encuesta.jsp y será la
pagina de inicio que contenga las preguntas de la encuesta
de la aplicación y la segunda se llama, Confirmacion.jsp, la
cual se encargara de desplegar el mensaje de
confirmación de que las respuestas de la encuesta ha sido
enviada con éxito al correo seleccionado.
Como aparece en la sección anterior, en el momento en
que se crea el nuevo proyecto, Page1.jsp aparece como la
pagina de inicio por defecto, para la aplicación de este
articulo, se renombrara esta pagina por Encuesta.jsp y
adicionalmente se creara una segunda pagina
Confirmacion.jsp así:
1. Haga click derecho en el nodo Page1.jsp y seleccione la
opción Rename del menú desplegable. Digite el nuevo
nombre del archivo y haga click en Continuar.
2. Para crear la segunda pagina haga click derecho sobre el
nodo Web Pages, seleccione New > New Page del menú
desplegable. Digite el nombre de la pagina y haga click en
finalizar.
Ahora hay que insertar los siguientes componentes que
compondrán la encuesta:
Figura 1. Ventana Projects
7. Bajo el nodo Web Pages esta el nodo Page1.jsp. El IDE
crea esta página por defecto y la hace la página de inicio.
La marca de flecha cerca a el nodo identifica a la página
como la página de inicio. Si desea utilizar una página
diferente como página de inicio, haga click derecho en el
• Label: los cuales contendrán las etiquetas con el titulo de
la encuesta y las preguntas que hay en ella.
• Static Text: desplegara el correo al que se enviaron las
respuestas de la encuesta en la página de confirmación.
• RadioButton Group, CheckBox Group, DropDown List y
TextField: corresponden a las respuestas de las preguntas
de la encuesta.
• Button: se encargara de enviar las respuestas al usuario
que realiza la encuesta al correo electrónico seleccionado
y volver a la página de inicio desde la página de
confirmación.
El resultado que se espera obtener es el que se aprecia en la
siguiente figura
Revista de Tecnología - Journal of Technology • Volumen 6, No. 2, Julio - Diciembre 2007
Figura 2. Diseño de la Encuesta
:Para agregar los componentes mencionados como
aparecen en la figura anterior, siga los siguientes pasos:
1. Haga doble clik sobre el nodo Encuesta.jsp, para abrir la
página en el editor visual el cual esta en el área de edición,
como aparece en la siguiente figura:
Figura 4. Paleta de Componentes
4. Repita el paso 3, ahora colocando los labels uno debajo
del otro dejando un espacio entre cada uno de ellos para
colocar los componentes correspondientes a las
respuestas para completar las preguntas de la encuesta
con las siguientes frases en el siguiente orden:
• ¿Le pareció interesante el Articulo?
• Seleccione sobre los cuales le gustaría recibir mas
información.
• Seleccione en la escala de 1 a 10 de la siguiente lista, la
opinión que tiene sobre el artículo, siendo diez la más alta
y uno la más baja.
Figura 3. Diseñador Visual
2. Para inser tar los componentes mencionados,
seleccione cada uno de ellos de la paleta de componentes
(figura 3) y arrástrelo sobre la página ubicada en el área de
edición.
3. Seleccione el componente de tipo Label y arrástrelo al
centro de la página de diseño. Digite la frase “Encuesta
Articulo”, haga click sobre otra sección de la página para
confirmar la frase que acaba de digitar. Si desea modificar
el contenido, haga doble click sobre el Label
Label.
• Digite la cuenta de correo electrónico donde desea
recibir sus respuestas a la encuesta.
5. Seleccione el componente RadioButton Group de la
paleta y arrástrelo debajo de la primera pregunta de la
encuesta. Haga click derecho sobre el componente y
seleccione la opción Configure Default Options del menú
emergente. Modifique los campos Display y Value de la
tabla, coloque los valores “Si” y “No” para ambos campos
en una fila distinta cada uno, haciendo doble click sobre
cada uno de los campos que desea modificar. Para
eliminar o adicionar una fila en la tabla, haga click sobre
los botones Delete y New respectivamente.
45
46
Universidad El Bosque - Facultad de Ingeniería de Sistemas
6. Seleccione el componente CheckBox Group de la paleta
y arrástrelo debajo de la segunda pregunta. Siga los pasos
de la opción Configure Default Options, pero ahora con
los va lore s sig uient e s: “Java Ser ver Fac e s”,
“Scopes”,“Netbeans conVisual Web Pack”y “Servlets y
JSP”.
7. Seleccione el componente DropDown List de la paleta y
arrástrelo debajo de la tercera pregunta. Siga los pasos de
la opción Configure Default Options del paso 5 con los
siguientes valores: “1”, ”2”, ”3”, ”4”, ”5”, ”6”, ”7”, ”8”,
”9” y”10”.
8. Seleccione el componente TextField de la paleta y
arrástrelo debajo de la cuarta pregunta.
9. Seleccione el componente Button de la paleta y
arrástrelo debajo del TextFiel que acaba de colocar.
Modifique su texto a “Enviar”.
10. Presione las teclas ctrl.+ s para salvar los cambios
realizados en la página.
Para la página de confirmación:
1. Haga doble click sobre el nodo Confirmacion.jsp
2. Seleccione el componente Label de la paleta y
modifique el texto a “Gracias por realizar la encuesta. Sus
respuestas han sido enviadas a su cuenta de correo:”.
3. Seleccione el componente Static Text de la paleta y
arrástrelo enfrente del componente Label que acaba de
colocar.
4. seleccione el componente Button de la paleta y
arrástrelo debajo del Static Text que acaba de colocar.
Modifique el texto a “Volver”.
5. Presione las teclas ctrl.+ s para salvar los cambios
realizados en la página.
Configuración de los objetos en los scopes.
Para complementar el funcionamiento de la aplicación, se
deben agregar una serie de objetos que almacenaran los
valores que componen la encuesta y que hacen parte de la
aplicación. Cada uno de estos objetos serán agregados en
los scopes según las siguientes características:
1. contador: almacenará el número de personas que han
participado en la encuesta. Será adicionado en el
application scope, por lo que se requiere que persista
durante las sesiones de la aplicación.
2. aParticipado: un objeto de tipo Booleano, el cual
verifica si el usuario ha participado o no en la encuesta
durante su sesión, por eso será adicionado en el session
scope.
3. correo: almacena el correo al que serán enviadas las
respuestas de la encuesta. Por ser un valor que
únicamente se requiere cada vez que el usuario participa
en la encuesta, será adicionado en el request scope.
Para adicionar los objetos anteriores a sus respectivos
scopes, se deben seguir los siguientes pasos:
1. En la ventada Outline ubicada debajo de la ventana
P roje c t s, haga click dere cho s obre el no do
ApplicationBean1, seleccione la opcion Add > Property.
Digite el nombre contador, seleccione el tipo y haga click
en el botón Ok. Haga doble click en el nodo
ApplicationBean1 para abrir el código fuente, busque el
objeto contador que acaba de crear y asígnele el valor igual
a cero (0). Presione ctrl.+s, para guardar los cambios y
ctrl.+f4 para cerrar la ventana.
2. Repita el paso anterior para el nodo SessionBean1,
adicione la propiedad aParticipado, seleccione el tipo
boolean. Haga doble click en el nodo SessionBean1 para
abrir el código fuente, busque el objeto aParticipado que
acaba de crear y asígnele el valor igual a false
false. Presione
ctrl.+s, para guardar los cambios y ctrl.+f4 para cerrar la
ventana.
3. Al igual que en el paso anterior, en el RequestBean1,
adicione la propiedad correo, de tipo String.
Configuración de la acción del botón Enviar.
Una vez se tienen hechas las páginas y configurados los
objetos en los scopes, se puede configurar las acciones
que se realizaran cuando se realice un click sobre el botón
Enviar que se coloco en la página de la encuesta. Para esto
siga los siguientes pasos:
1. Haga doble click sobre el nodo Encuesta.jsp.
2. Seleccione el botón Enviar y haga doble click sobre el
mismo. Una ventana con el código fuente de la página
aparecerá en el área de edición. Dentro de esta se creará
automáticamente el método button1_action().
3. Dentro del método anterior copie y pegue el siguiente
código.
//Método para aumentar el objeto contador
getApplicationBean1().setContador(getApplicationBean
1().getContador()+1);
//Método para cambiar el estado del objeto aParticipado
getSessionBean1().setAParticipado(true);
//Metodo para asignarle el valor al objeto correo
getRequestBean1().setCorreo(textField1.getText().toStrin
g());
Revista de Tecnología - Journal of Technology • Volumen 6, No. 2, Julio - Diciembre 2007
//Metodo para obtener las respuestas seleccionadas de la
pregunta 2 de la encuesta
String[] seleccion = new
String[checkboxGroup1.getSelected().toString().length()
];
seleccion =
(String[])checkboxGroup1.getSelected();
String respuesta = new String("");
for(int i=0; i<seleccion.length;i++){
respuesta =
respuesta+seleccion[i]+"\n";
}
// Dirección de correo a la que se envían las respuestas de
la encuesta.
String to = (String)textField1.getText();
String subject = "Respuestas Encuesta";
// Asunto del correo.
//Mensaje del correo.
String message = new String("Las respuestas de
su encuesta
son:\n\n"+label2.getText().toString()+"\n\n"+
radioButtonGroup1.getSelected().toString()+"\n\n"+labe
l3.getText().toString()+"\n\n"+
respuesta+"\n\n"+label5.getText().toString()+"\n\n"+dro
pDown1.getSelected().toString
)+"\N\n"+
"El numero de personas que han participado en
la encuesta son:
"+"\n\n"+getApplicationBean1().getContador());
//Direccion del servidor de correo SMTP.
String mailhost = "smtp.correo"; // this code may
not work
//Nombre de usuario de la cuenta de correo de
donde se envia el correo.
String user = "[email protected]";
//Contraseña del usuario de la cuenta de correo.
String password = "prueba";
boolean auth = true;
boolean ssl = true;
Properties props = System.getProperties();
if (mailhost != null){
props.put("mail.smtp.host", mailhost);
props.put("mail.smtps.host", mailhost);
}
if (auth){
props.put("mail.smtp.auth", "true");
props.put("mail.smtps.auth", "true");
}
// Get a Session object
Javax.mail.Session session =
Javax.mail.Session.getInstance(props);
// construct the message
javax.mail.Message msg = new
MimeMessage(session);
try {
// Set message details
Msg.setRecipient(javax.mail.Message.RecipientType.TO,
new InternetAddress(to));
msg.setSubject(subject);
msg.setSentDate(new Date());
msg.setText(message);
// send the thing off
SMTPTransport t =
(SMTPTransport)session.getTransport(ssl ? "smtps" :
"smtp");
try {
if (auth)
t.connect(mailhost, user, password);
else
t.connect();
t.sendMessage(msg, msg.getAllRecipients());
}finally {
t.close();
}
log("Mail was sent successfully.");
}catch (Exception e) {
if (e instanceof SendFailedException) {
MessagingException sfe =
(MessagingException)e;
if (sfe instanceof SMTPSendFailedException) {
SMTPSendFailedException ssfe =
(SMTPSendFailedException)sfe;
log("SMTP SEND FAILED:");
}
Exception ne;
while ((ne = sfe.getNextException()) !=
null &&
ne instanceof MessagingException)
{
sfe = (MessagingException)ne;
if (sfe instanceof
SMTPAddressFailedException) {
SMTPAddressFailedException ssfe =
(SMTPAddressFailedException)sfe;
log("ADDRESS FAILED:");
log(ssfe.toString());
log(" Address: " + ssfe.getAddress());
log(" Command: " +
ssfe.getCommand());
log(" RetCode: " +
ssfe.getReturnCode());
log(" Response: " + ssfe.getMessage());
}else if (sfe instanceof
SMTPAddressSucceededException) {
log("ADDRESS SUCCEEDED:");
SMTPAddressSucceededException ssfe =
(SMTPAddressSucceededException)sfe;
}
}
}else {
log("Got Exception: " + e);
}
}
47
48
Universidad El Bosque - Facultad de Ingeniería de Sistemas
Nota: El servidor de correo, corresponde a la dirección
electrónica del protocolo SMTP que permite el envió de
correos electrónicos desde un servidor de correo
determinado. Además el servidor de correo debe tener
habilitado el puerto 465 para el protocolo SMTPS que
permite la autenticación de un usuario y contraseña en
una cuenta de correo.
4. Para que la aplicación pueda enviar los correos
electrónicos, es necesar io adicionar la librer ía
correspondiente al paquete de JavaMail, para esto siga las
siguientes instrucciones:
• En la ventana Proyects, haga click derecho sobre el nodo
Libraries > Add JAR / Folder.
• Busque el archivo mail.jar, seleccionelo y haga click abrir.
5. Adicione los siguientes imports al principio del código
fuente de la página Encuesta.jsp
import java.util.Date;
import javax.faces.application.FacesMessage;
import javax.faces.component.UIComponent;
import javax.faces.context.FacesContext;
import javax.faces.validator.ValidatorException;
import javax.mail.*;
import java.util.Properties;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.*;
import javax.mail.Address;
import javax.mail.MessagingException;
import javax.mail.PasswordAuthentication;
import javax.mail.SendFailedException;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.URLName;
import javax.mail.event.TransportEvent;
import com.sun.mail.smtp.SMTPTransport;
import com.sun.mail.smtp.*;
import com.sun.rave.web.ui.component.Message;
import javax.faces.FacesException;
6. En el código fuente, busque el metodo prerender() y
adicione el siguiente código:
if(getSessionBean1().isAParticipado())
Button1.setDisabled(true);
7. Presione las teclas ctrl+s para salvar los cambios.
Configuración de la pagina Confirmacion.jsp
La página de confirmación despliega un mensaje de
agradecimiento y confirmación del correo al que será
enviado el correo electrónico con las respuestas de la
encuesta, para completar este procedimiento siga los
siguientes pasos:
1. Haga doble clik sobre el nodo Confirmacion.jsp, en la
ventana Projects.
2. En el área de edición, haga click sobre el botón Java para
abrir el código fuente de la página.
3. Busque el método prerender() y adicione el siguiente
código:
StaticText1.setText(getRequestBean1().getCorre
o().toString());
4. Presione las teclas ctrl+s para salvar los cambios.
Configuración de la navegación de la aplicación.
Para configurar la navegación de la aplicación de los
botones siga los siguientes pasos (Figura 5):
Figura 5. Página de Navegación
1. En la ventana Projects, haga doble click sobre el nodo
Page Navigation.
2. Haga click sobre Encuesta.jsp para agrandar el icono.
3. Seleccione el puerto de conexión junto al button1 y
arrástrelo hasta el icono de Confirmacion.jsp.
4. Haga doble click sobre el label del conector que acaba de
crear para seleccionar el modo de edición. Escriba enviar y
presione enter.
5. Haga click sobre Confirmacion.jsp para agrandar el
icono.
6. Seleccione el puerto de conexión junto al button1 y
arrástrelo hasta el icono de Encuesta.jsp.
7. Haga doble click sobre el label del conector que acaba de
crear para seleccionar el modo de edición. Escriba volver
y presione enter
8. Presione las teclas ctrl. + s para guardar los cambios.
Ejecutar la aplicación.
Una vez se ha completado todos los pasos anteriores, solo
resta poner en marcha la aplicación, para esto
simplemente haga click sobre el botón Run Main Project
en la barra principal de tareas.
CONCLUSIONES
La utilización de Java Server Faces a la hora de desarrollar
una aplicación Web, puede ser la mejor opción, debido a
que permite desarrollar aplicaciones en un menor tiempo
Revista de Tecnología - Journal of Technology • Volumen 6, No. 2, Julio - Diciembre 2007
que cualquier otra tecnología similar, además de disminuir
la escritura de código y facilitar el diseño a los
programadores.
Sin embargo Java Server Faces, oculta mucha de la
arquitectura de una aplicación Web lo que podría
dificultar eventuales modificaciones a la misma,
consecuencia de un requerimiento nuevo que la
tecnología no maneje.
Netbeans junto con el paquete Visual Web Pack, se
convierte en una herramienta versátil y amigable que
permite la fácil construcción de nuevas aplicaciones Web
o de cualquier otro tipo que implemente tecnología Java,
J2EE, Java Server Faces, y muchas otras.
REFERENCIAS
[1] Bergsten Hans, Java Server Faces, O'Reilly, 2004.
[2] Java, “Introduction to Java Server Faces part 1”,
disponible en
ht t p://w w w.devshed.com/c/a/Java/Int roduc tion-toJavaServer-Faces-1/ (11/05/2007)
[3] Netbeans, “Understanding Scopes and Managed
Beans”, disponible en
ht t p://w w w.netb eans.org/k b/55/v w p-scop es.ht ml
(11/05/2007)
[4] Java en Castellano. “API de JavaMail”, disponible en
http://w w w.programacion.com/java/tutorial/javamail/
(11/05/2007)
[5] Netbeans, IDE para Java y J2EE, disponible en
http://www.netbeans.org (11/05/2007)
[6] Netbeans, Introduction to the Netbeans Visual Web
Pack, disponible en
h t t p : / / w w w. n e t b e a n s.o r g / p r o d u c t s / v i s u a l w e b /
(11/05/2007)
Artículo de informe de resultado de proyecto de Informática.
El Autor
Alejandro Pieschacón Rueda
Ingeniero de Sistemas de la Facultad de Ingeniería de Sistemas de la Universidad El Bosque.
[email protected]
49