34
INSTITUTO POLITECNICO NACIONAL ESCUELA SUPERIOR DE CÓMPUTO ALUMNO: SANLUIS CASTILLO JOSE DAVID PROFESOR: CIFUENTES ALVAREZ ALEJANDRO SIGFRIDO MATERIA: WEB APPLICATION DEVEPLOMENT STRUTSGRUPO: 3CM2

Struts_Sanluis_Castillo_Jose_David.pdf

Embed Size (px)

Citation preview

Introducción al Framework Struts Web

Este documento le lleva a través de los fundamentos del uso de NetBeans IDE

para desarrollar aplicaciones web utilizando el framework de desarrollo web

Struts. Struts es un framework de código abierto que se extiende de la API Java

Servlet y utiliza unModelo, Vista, Controlador (MVC). Le permite crear mantenible,

extensible y aplicaciones web flexibles basados en tecnologías estándar, como las

páginas JSP, JavaBeans, paquetes de recursos, y XML.

Este tutorial te enseña cómo construir una sencilla aplicación MVC que muestra

una página de inicio de sesión y devuelve una página de éxito en la presentación

de los datos que pasan la validación. Se aprende varias características básicas

proporcionadas por Struts, así como la forma de estas características se

implementan utilizando el IDE. En concreto, se utilizan etiquetas de Struts en las

páginas JSP, mantener los datos de usuario con Struts ActionForm de frijol, y

poner en práctica la lógica de reenvío utilizando una

Struts Acción objeto. También se muestra cómo implementar la validación simple

de su solicitud, incluyendo la creación de un mensaje de advertencia de un intento

fallido.

Para una introducción más finos como para Struts, véase ¿Cómo funciona

Struts? en la página oficial de Struts sitio web. Asimismo, hacer uso de la

búsqueda del IDE Javadoc Index (Ayuda Javadoc> Búsqueda Índice) para ver

el API Struts Framework , que está empaquetado con las librerías de Struts.

Contenido

Descripción de la aplicación

Configuración de una aplicación Struts

Creación de páginas JSP

o Creación de una página de acceso

o Creación de una página de éxito

Creación de un ActionForm bean

Creación de una acción de clase

Implementación de validación

o Acceso a los datos de frijol y la preparación de un Estado de Desvío

o Configuración de un mensaje de error

Añadir adelante los comentarios de struts-config.xml

Configuración y ejecución de la aplicación

o Configuración de la página de bienvenida

o Adjuntar una hoja de estilos

o Ejecutar la aplicación

Descripción de la aplicación

Cuando se utiliza Struts, el marco que proporciona un servlet

controlador, ActionServlet , que se define en las librerías de Struts que se incluyen

en el IDE, y que se registra automáticamente en el web.xml descriptor de

despliegue que se muestra a continuación . El servlet controlador utiliza un struts-

config.xml archivo de corresponder las peticiones entrantes a StrutsAcción objetos,

y crear instancias de los ActionForm objetos asociados a la acción para almacenar

temporalmente los datos del formulario. La acción objeto de procesos de las

solicitudes mediante su ejecución de método, mientras que haciendo uso de los

datos almacenados en el grano de la forma. Una vez que la acción objeto procesa

una solicitud, que almacena todos los datos nuevos (es decir, en el bean de

formulario, o en un grano de resultado por separado), y envía los resultados a la

vista apropiada.

Desarrollo de una aplicación Struts es similar al desarrollo de cualquier otro tipo de

aplicación web en el IDE NetBeans. Sin embargo, complementar su kit de

herramientas de desarrollo web, aprovechando el apoyo Struts proporcionada por

el IDE. Por ejemplo, puede utilizar las plantillas en el IDE para crear puntales de

acción y objetos ActionForm frijoles. Tras su creación, el IDE se registra

automáticamente en estas clases en el struts-config.xml archivo y le permite

ampliar este archivo muy fácilmente utilizando los elementos del menú en el menú

del botón derecho del Editor de código fuente de. Debido a que muchas

aplicaciones web utilizan páginas JSP para la vista, Struts también proporciona

bibliotecas de etiquetas personalizadas, que facilitan la interacción con los

formularios HTML. En Editor de código fuente del IDE, puede llamar a la

finalización de código y el apoyo Javadoc que le ayuda a trabajar de manera

eficiente a estas bibliotecas.

Los pasos siguientes muestran cómo crear un sencillo formulario que recoge datos

de los usuarios, realiza la validación de simple, y envía los datos en una página de

éxito.

Configuración de una aplicación Struts

En el IDE, una aplicación Struts no es más que una aplicación web normal,

acompañado de las bibliotecas y archivos de configuración de Struts. Se crea una

aplicación Struts en la misma forma que se crea cualquier otra aplicación Web en

el IDE - utilizando el asistente de nueva aplicación Web, con el paso adicional de lo

que indica que desea que las bibliotecas y archivos de configuración de Struts que

se incluirán en su solicitud.

1. Elija Archivo> Nuevo Proyecto (Ctrl + Mayúsculas + N; ⌘ + Mayúsculas +

N en Mac) en el menú principal. En Categorías, seleccione Web. En

Proyectos, seleccione Aplicación Web y haga clic en Siguiente.

2. En el panel de Nombre y Ubicación, escriba MyStrutsApp de nombre del

proyecto y haga clic en Siguiente.

3. En el panel Server y Configuración, seleccione el servidor al que desea

implementar la aplicación. Sólo los servidores que están registrados con el

IDE están en la lista. (Para registrar un servidor, haga clic en Añadir junto

al servidor de la lista desplegable.) Además, tenga en cuenta que la ruta de

contexto de la aplicación implementada se convierte en /

MyStrutsApp . Haga clic en Siguiente.

4. En el panel Marcos, seleccione Struts: Para fines de este tutorial, no cambie

ninguno de los valores de configuración en la región inferior de este

panel. Estos son los siguientes:

o Nombre de la acción Servlet : El nombre del servlet action de Struts

utilizado en la aplicación. El web.xmldescriptor de despliegue contiene una

entrada para el servlet de acción y especifica las adecuadas Struts

parámetros específicos, tales como la ruta de la clase servlet dentro de la

biblioteca Struts y el struts-config.xml archivo de configuración dentro

de la aplicación.

o Patrón de Acción URL : Especifica los patrones de las solicitudes de

entrada que se asignan a la acción del controlador Struts. Esto genera una

entrada de asignación en el descriptor de despliegue. De forma

predeterminada, sólo el *. no se asigna patrón.

o Aplicación de Recursos : permite especificar el paquete de recursos que

se utilizarán en el struts-config.xmlarchivo de mensajes de

localización. De forma predeterminada, esto

es com.myapp.struts.ApplicationResource .

o Añadir dominios de primer nivel de Struts : Le permite generar

descriptores de etiquetas de la biblioteca para las bibliotecas de etiquetas

de Struts. Un descriptor de biblioteca de etiquetas es un documento XML

que contiene información adicional acerca de la biblioteca de etiquetas

completo, así como cada etiqueta individual. En general esto no es

necesario, porque se puede consultar en línea los URI en lugar de archivos

locales de dominios de nivel superior.

5. Haga clic en Finalizar. El IDE crea la carpeta del proyecto en su sistema de

archivos. Al igual que con cualquier aplicación web en el IDE, la carpeta del

proyecto contiene todas las fuentes y los metadatos del IDE del proyecto,

tales como la secuencia de comandos Ant. Sin embargo, la aplicación Web,

además cuenta con todas las bibliotecas de Struts en su ruta de clase. No

sólo están en ruta de clases de la aplicación, pero se incluyen en el proyecto

y se empaquetan con él más tarde, cuando se genera el proyecto.

El proyecto se abre en el IDE. La ventana de Proyectos es el principal punto de

entrada a las fuentes de su proyecto. Muestra una vista lógica de los contenidos de

los proyectos importantes. Por ejemplo, si expande varios nodos dentro del nuevo

proyecto, que puede aparecer como sigue:

Las Struts los archivos de configuración, así como descriptor de la aplicación de

despliegue, están convenientemente ubicados dentro de la carpeta Archivos de

configuración. Abra el descriptor de despliegue (doble clic en el archivo

web.xml nodo del archivo para que se muestre en el Editor de código

fuente). Con el fin de manejar el procesamiento de Struts, un mapeo se

proporciona para el servlet controlador de Struts:

Por encima, el servlet controlador de Struts se llama la acción y se define en la

biblioteca de Struts (org.apache.struts.action.ActionServlet ). Se pone

a manejar todas las peticiones que satisfacen la *. hacer la cartografía.Además,

los parámetros de inicialización del servlet se especifican mediante el struts-

config.xml archivo, también figuran en laWEB-INF carpeta.

Creación de páginas JSP

Comience por la creación de dos páginas JSP de la aplicación. El primero muestra

un formulario. La segunda es la opinión de regresó al inicio de sesión tiene éxito.

Creación de una página de acceso

Creación de una página de éxito

Creación de una página de acceso 1. Haga clic con el MyStrutsApp nodo del proyecto, seleccione Nuevo> JSP, y

el nombre del nuevo archivo de inicio de sesión . Haga clic en

Finalizar. El login.jsp archivo se abre en el editor de código.

2. En el Editor de código fuente, modificar el contenido tanto de

la <title> y <h1> etiquetas (o <h2> etiquetas, dependiendo de la versión

IDE que está utilizando) para Login Form .

3. Agregue los siguientes dos directivas taglib a la parte superior del archivo:

<% @ Taglib uri = "http://struts.apache.org/tags-bean" prefix =

"bean"%>

<% @ Taglib uri = "http://struts.apache.org/tags-html" prefix =

"html"%>

Muchas aplicaciones web utilizan páginas JSP para vistas en el paradigma MVC,

por lo que Struts proporciona las bibliotecas de etiquetas personalizadas, que

facilitan la interacción con los formularios HTML. Estos se pueden aplicar

fácilmente a un archivo JSP utilizando el soporte del IDE para completar el

código. Al escribir en el editor de código fuente, el IDE te ofrece la finalización de

código para las etiquetas de Struts, así como el Javadoc Struts. También se puede

invocar la finalización de código manualmente pulsando Ctrl-Espacio: El frijol

taglib le ofrece numerosas etiquetas que son útiles cuando se asocia un grano de

forma (es decir, un ActionForm frijol), con los datos recogidos en el

formulario. El HTML taglib ofrece una interfaz entre la vista y otros componentes

necesarios para una aplicación web. Por ejemplo, por debajo de sustituir comunes

html formulario etiquetas con Struts " <html:form> etiquetas. Uno de los

beneficios esto proporciona es que hace que el servidor para localizar o crear un

objeto de frijol que se corresponde con el valor proporcionado para html:

formulario de 's la acción del elemento.

4. Por debajo de la <h1> (o <h2> ) las etiquetas, añada lo siguiente:

5. En la paleta (Ventana> Paleta) en la región derecha del IDE, arrastre un

elemento de la tabla de la categoría de HTML a un punto situado justo

encima de la <html:submit value="Login" /> línea. El cuadro de

diálogo Insertar muestra.Establecer las filas de tres , las columnas a 2 , y

dejar el resto de valores en 0 . Más adelante en el tutorial, adjuntar una

hoja de estilo que afectan a la pantalla de tabla. Haga clic en Aceptar y, a

continuación, opcionalmente, el código de formato (Alt-Shift-F). La forma en

la login.jsp ahora se ve de la siguiente manera:

<html:form action="/login">

<table border="0">

<thead>

<tr>

<th> </ th>

<th> </ th>

</ Tr>

</ Thead>

<tbody>

<tr>

<td> </ td>

<td> </ td>

</ Tr>

<tr>

<td> </ td>

<td> </ td>

</ Tr>

<tr>

<td> </ td>

<td> </ td>

</ Tr>

</ Tbody>

</ Table>

<html:submit value="Login" />

</ Html: form>

6. En la primera fila de la tabla, escriba lo siguiente:

7. En la segunda fila de la tabla, escriba lo siguiente:

El html: texto elemento que permite hacer coincidir los campos de entrada de la

forma con propiedades en la forma de frijol que se crearán en el siguiente

paso. Así, por ejemplo, el valor de la propiedad debe coincidir con un campo

declarado en el grano de forma asociada con este formulario.

8. Mueva el <html:submit value="Login" /> elemento en la segunda columna

de la fila de la tabla en tercer lugar, por lo que la tercera fila de la tabla

aparece de la siguiente manera:

En esta etapa, el formulario de inicio de sesión debe tener el siguiente aspecto:

Creación de una página de éxito 1. Haga clic con el MyStrutsApp nodo del proyecto, seleccione Nuevo> JSP, y

el nombre del nuevo archivo de éxito . En el campo Carpeta, haga clic en

el botón Examinar y seleccionar junto WEB-INF en el cuadro de diálogo que

aparece. Haga clic en Seleccionar carpeta para entrar en WEB-INF en el

campo Carpeta. Los archivos contenidos en la carpeta WEB-INF no son

directamente accesibles a las peticiones de los clientes. Con el fin

de success.jsp que se muestra correctamente, debe contener los datos

procesados. Haga clic en Finalizar.

2. En el Editor de código, cambia el con tenido de la página recién creada a

la siguiente:

3. Añadir un bean taglib Directiva a la parte superior del archivo:

4. Agregue los siguientes <bean:write> etiquetas:

Mediante el empleo de los <bean:write> etiquetas, hacer uso de la semilla

taglib para localizar el ActionForm de frijol está a punto de crear y visualizar los

datos del usuario guardados para el nombre y la dirección de correo

electrónico.

Creación de un ActionForm bean

Un Struts ActionForm bean se utiliza para guardar los datos entre las

peticiones. Por ejemplo, si un usuario envía un formulario, los datos se almacenan

temporalmente en el bean de formulario de forma que puede volver a mostrar en

la página del formulario (si los datos están en un formato no válido, o si no de

inicio de sesión) o aparece en un éxito de inicio de sesión página (si los datos

pasan de validación).

1. Haga clic con el MyStrutsApp nodo del proyecto y seleccione Nuevo>

Otros. En Categorías elegir Struts, a continuación, en Tipos de archivo elegir

Struts ActionForm Bean. Haga clic en Siguiente.

2. Escriba LoginForm el nombre de clase. A continuación,

seleccione com.myapp.struts en el paquete de la lista desplegable y haga

clic en Finalizar.

El IDE crea el ActionForm frijol y lo abre en el Editor de código fuente. De

forma predeterminada, el IDE se ofrece unacadena de llamados nombre y

un int llamada número . Ambos campos tienen métodos de acceso

definidos por ellos.Además, el IDE agrega una declaración de frijol a

la struts-config.xml archivo. Si abre el struts-config.xml archivo

en el Editor de código fuente, se puede ver la siguiente declaración, que fue

añadido por el asistente:

El IDE proporciona soporte de navegación en el struts-

config.xml archivo. Mantenga presionada la tecla Ctrl y mueva su ratón sobre

el ActionForm nombre del bean de clase completo. El nombre se convierte en

un vínculo, lo que le permite navegar directamente a la clase en el Editor de

código fuente:

3. En el ActionForm de frijol en el Editor de código fuente, crear campos y

que acompañan a los métodos de acceso que corresponden a

la nombre y correo electrónico campos de entrada de texto que

creó en el login.jsp . Debido a que el nombre ya se ha creado en

el ActionForm esqueleto, sólo tiene que aplicar de correo

electrónico . Agregue la siguiente declaración bajo el “name”:

Seleccione Getter y Setter, a continuación, en el cuadro de diálogo que aparece,

seleccione e-mail: String y haga clic en Generar. Métodos de acceso se

generan para el correo electrónico de campo.

Creación de una acción de clase

La acción de clase contiene la lógica de negocio en la aplicación. Cuando los

datos del formulario se recibe, es la ejecución deun método de acción objeto

que procesa los datos y determina qué ver que transmita los datos procesados

a. Debido a que laacción de clase es parte integral del marco de trabajo Struts,

NetBeans IDE proporciona un asistente.

1. En la ventana de Proyectos, haga clic en el MyStrutsApp nodo del proyecto

y seleccione Nuevo> Otros. En la categoría de Struts Struts elija Acción y

haga clic en Siguiente.

2. En el panel Nombre y ubicación, cambiar el nombre a loginAction .

3. Seleccione com.myapp.struts en el paquete de la lista desplegable.

4. Escriba / login en el camino de acción. Este valor debe coincidir con el

valor establecido para la acción de atributo de los<html:form> etiquetas

en login.jsp . Asegúrese de que la configuración de aparecer como en la

siguiente imagen, haga clic en Siguiente.

5. En el tercer paso del asistente, se le da la oportunidad de asociar

la acción de clase con un form bean. Observe que elLoginForm frijol

que ya ha creado aparece como una opción para ActionForm Nombre Bean. Realice los siguientes ajustes en el panel:

Eliminar la barra diagonal para el campo de entrada de recursos

Establecer Alcance a la solicitud (período de sesiones es el valor del ámbito

predeterminado en Struts.)

Desmarque la opción Validar bean ActionForm

Haga clic en Finalizar. El loginAction clase se genera, y el archivo se abre en

el Editor de código fuente. También tenga en cuenta que la siguiente acción

de entrada se agrega a la struts-config.xml archivo:

Click Finish. The LoginAction class is generated, and the file opens in the

Source Editor. Also note that the following actionentry is added to

the struts-config.xml file:

Los nombres y alcance atributos se aplican a la forma de frijol que está asociado

con la acción. En concreto, cuando una solicitud de entrada los partidos o de

inicio de sesión , el marco de trabajo Struts automáticamente instancias de

unLoginForm objeto y la rellena con los datos del formulario enviado en la

solicitud. El valor predeterminado de validación se establece cierto . Esto le

dice al marco de referencia para llamar a la validación de método del bean de

formulario. Se anula la selección de esta opción en el asistente sin embargo,

debido a que la voluntad a mano el código de validación simple en el siguiente

paso, que no requiere la validación de método.

Implementación de validación

En el Editor de código fuente, navegar a través de la loginAction clase y mirar

al ejecutar el método:

Tenga en cuenta la definición de ÉXITO , que figuran por debajo de

la loginAction declaración de la clase:

En la actualidad, el mapping.findForward método se ha configurado para

remitir incondicionalmente cualquier petición a un punto de vista de salida

llamado éxito . Esto no es realmente conveniente, desea realizar primero una

especie de validación de los datos de entrada para determinar si se debe enviar

el éxito de vista, o cualquier otro punto de vista diferente.

Acceso a los datos de frijol y la preparación de un Estado de Desvío

Configuración de un mensaje de error

Acceso a los datos de frijol y la preparación de un Estado de Desvío 1. Escriba el siguiente código dentro del cuerpo de la ejecución de método:

Para poder utilizar los datos del formulario de entrada, usted necesita

tomar ejecutar 's ActionForm argumento y proyectarlo como LoginForm , a

continuación, aplicar los métodos getter que creó anteriormente.

2. Escriba el siguiente cláusula condicional para realizar la validación en los

datos de entrada:

En esta etapa, la ejecución de método debe ser el siguiente:

3. Agregar una declaración de NO a la loginAction clase:

Usando la lógica de lo anterior, la ejecución de método, remite la solicitud a

la éxito de vista si el usuario proporciona una entrada para ambas el nombre y

el correo electrónico los campos, y el correo electrónico introducido contiene

un símbolo "@". De lo contrario, la falta de vista se transmitió. Como se

demostrará más adelante, en adición a término los comentarios de struts-

config.xml , puede definir el fracaso para señalar de nuevo a la página del

formulario, para que el usuario tiene otra oportunidad de introducir datos en el

formato correcto.

Configuración de un mensaje de error Si el formulario de inicio de sesión se devuelve, que sería bueno para informar al

usuario de que la validación ha fallado. Usted puede lograr esto mediante la

adición de un error de campo en el form bean, y una

adecuada <bean:write> etiqueta a la forma en la login.jsp . Finalmente, en

la acción objeto, establecer el mensaje de error que se mostrará en el caso de

que elfallo vista que se elija.

1. Abra LoginForm y añade el error de campo a la clase:

2. Agregue un método get y un método de selección para el error , como se

ha demostrado anteriormente .

3. Modificar el método de selección para que aparezca la siguiente manera:

public void setError() {

this.error =

"<span style='color:red'>Please provide valid

entries for both fields</span>";

}

4. Abra login.jsp y realice los cambios siguientes:

5. En loginAction , en el caso de la cláusula condicional, agregue una

instrucción para fijar el mensaje de error antes de enviar

el fracaso condición

Su completa la clase loginAction, esta debe aparecer como sigue:

Añadir adelante los comentarios de struts-

config.xml

Para que la aplicación para que coincida con las páginas JSP con las condiciones de

envío devueltos por loginAction 's ejecutarel método, es necesario

añadir adelante entradas en el struts-config.xml archivo.

1. Abra struts-config.xml en el Editor de código fuente, haga clic en

cualquier lugar en el la acción de entrada paraLoginForm , y elegir

Struts> Add Forward.

2. En el cuadro Agregar tipo de diálogo hacia adelante, el éxito en el

nombre de Adelante. Introduzca la ruta al success.jspen el campo del

archivo de recursos (es decir, / WEB-INF/success.jsp ). El cuadro de

diálogo debe verse de la siguiente manera: Haga clic en Agregar. Tenga en

cuenta que el siguiente avance se agregaba al struts-config.xml

3. Realice la misma acción para agregar una entrada a seguir para el

fracaso . Establezca la ruta del archivo de recursos para /

login.jsp . El siguiente avance entrada se agrega a struts-

config.xml

Configuración y ejecución de la aplicación

El IDE usa un script de construcción Ant para construir y ejecutar la aplicación

web. El IDE genera el script de compilación cuando se creó el proyecto, basándose

en las opciones que ha entrado en el Asistente para nuevo proyecto. Antes de

construir y ejecutar la aplicación, es necesario establecer el punto de la aplicación

por defecto la entrada a login.jsp . Si lo desea, también puede agregar una

sencilla hoja de estilo para el proyecto.

Configuración de la página de bienvenida

Adjuntar una hoja de estilos

Ejecutar la aplicación

Configuración de la página de bienvenida 1. En la ventana de proyectos, haga doble clic en el archivo

web.xml descriptor de despliegue. Las fichas que aparecen en la parte

superior del editor de código que proporcionan una interfaz para

el web.xml archivo. Haga clic en la ficha Páginas. En el campo de los

archivos de bienvenida, introduzca login.jsp . Ahora haga clic en la ficha

XML para ver el archivo. Tenga en cuenta que login.jsp aparece ahora en

el archivo de bienvenida de entrada:

Adjuntar una hoja de estilos 1. Agregar una sencilla hoja de estilo para el proyecto. Una manera fácil de

hacer esto es por el ahorro de esta hoja de estilo de la muestra a su

equipo. Copie el archivo (Ctrl-C), luego en el IDE, seleccione el nodo Web

Pages en la ventana de Proyectos y pulse Ctrl-V). El archivo se agrega a su

proyecto.

2. Vincular la hoja de estilo a sus páginas JSP mediante la adición de una

referencia entre los <head> etiquetas tanto

delogin.jsp y success.jsp :

<link rel="stylesheet" type="text/css" href="stylesheet.css">

Ejecutar la aplicación 1. En la ventana de Proyectos, haga clic en el nodo del proyecto y seleccione

Ejecutar. El IDE se basa la aplicación web y lo implementa, con el servidor

que ha especificado al crear el proyecto. El explorador se abre y muestra

el login.jsp página.Escriba algunos datos que no pasan la validación

debe, es decir, deje en blanco el campo ya sea, o introducir una dirección

de correo electrónico con un faltante símbolo "@": Al hacer clic en Inicio de

sesión, los vuelve a mostrar la forma de inicio de sesión de páginas, que

contienen un mensaje de error: Prueba a introducir los datos que debe

pasar la validación. Al hacer clic en Inicio de sesión, se le presentará la

página de éxito: