7/18/2019 131841990 Primeros Pasos Usando Struts y Eclipse Tutorial http://slidepdf.com/reader/full/131841990-primeros-pasos-usando-struts-y-eclipse-tutorial 1/32 Primeros pasos usando struts y eclipse tutorial Esta tutorial explicará los primeros pasos usando los struts de Apache como framework para internet y eclipse como ambiente de desarrollo. Crearemos un ejemplo simple de una aplicaión para biblioteca usando plugins libres como la consola Struts y !"SS #$E. Información General Autor % Sebastian &ennebr'der Sascha (olski http%))www.laliluna.de)tutorials.html *utoriales para Struts+ E!+ eclipse y xdoclet. Traducción: Sebastian Arechederreta Dato % Enero+ ,- th ,-- Herramientas De Desarrollo Eclipse /.x Consola struts !"SS #$E 0al usar !"SS1 Sysdeo plugin 0al usar *omcat1 Código fuente: http%))www.laliluna.de)assets)tutorials)first2steps2with2struts.3ip Uso del código fuente. El código fuente no incluye ninguna de las bibliotecas solo los fuentes. Cree un proyecto web+ agregue las bibliotecas manualmente seg4n lo explicado en este tutorial. 5uego extraiga los códigos fuentes+ 6ue proporcionamos+ a su proyecto. La ersión pdf de este tutorial !en ingl"s#. http%))www.laliluna.de)assets)tutorials)first2steps2with2struts2es.pdf Ta$la de contenido 7rimeros pasos usando struts y eclipse 8 #nformación general 8
32
Embed
131841990 Primeros Pasos Usando Struts y Eclipse Tutorial
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
7/18/2019 131841990 Primeros Pasos Usando Struts y Eclipse Tutorial
Esta tutorial explicará los primeros pasos usando los struts de Apache como framework para internet yeclipse como ambiente de desarrollo. Crearemos un ejemplo simple de una aplicaión para bibliotecausando plugins libres como la consola Struts y !"SS #$E.
Información General
Autor %
Sebastian &ennebr'der
Sascha (olski
http%))www.laliluna.de)tutorials.html *utoriales para Struts+ E!+ eclipse y xdoclet.
9e6uerimientos para la instalación de !"SS #$E+ cuando está utili3ando !"SS como ser:idor deaplicación. @na tutorial de cómo crear y distribuir proyectos web con la !"SS #$E se puede encontrara6u.
el cuál fue mencionado en los re6uisitos. $esarrolle un proyecto web como se explica all.
Agregando soporte struts
7or ahora el proyecto es un proyecto normal de EE+ as 6ue necesitamos agregar las capacidades de losstruts 0bibliotecas+ archi:os xml...1. 5a manera más fácil es copiar un poryecto struts en blanco en su
5as bibliotecas de struts ahora aparecerán en el explorador de pa6uete.
Cree una p0gina de $ienenida por defecto
!ien+ ahora deseamos crear una página por defecto. !otón derecho 0s otra :e31 en la carpeta (eb9ooten el proyecto y elija Few S7. Si usted no puede encontrar esta opción+ seleccione DotherD yentonces S7.
G@sted debe tener instalado el !"SS #$EH
7/18/2019 131841990 Primeros Pasos Usando Struts y Eclipse Tutorial
@sted encontrará el archi:o index.jsp en la carpeta (eb9oot del proyecto. $ebemos agregar lasbibliotecas de eti6ueta de struts a nuestro S7. Fecesitamos bibliotecas de eti6ueta 0*ag 5ibraries1parautili3ar eti6uetas de struts en un S7. En este caso necesitamos solamente la biblioteca de la leng'eta dela lógica de struts. Cambie su contenido de S7 al siguiente.
5a eti6ueta logic%forward hace 6ue Struts bus6ue una redirección 0forward1 en el archi:o de configuración.Cuando no se puede encontrar esta redirección occure una excepción. Explicamos la action forward en elcaptulo siguiente.
Cree un segundo S7 index.jsp en el directorio)(eb9oot)jsp.Cambie el S7 a lo siguiente%
7/18/2019 131841990 Primeros Pasos Usando Struts y Eclipse Tutorial
<meta http-e8uiv="description" content="+sta es mi pgina"
</head
<#od9
0ienvenido$
<#r
<html:link action="#ookist"ostrar lista de li#ros</html:link
</#od9
</html:html
Glo$al Action /or'ards y Action 1appings
23u" es una acción de redirección !action for'ard#4@na acción de redirección se puede utili3ar para redireccionar a un jsp o a un mapa de acción 0actionmapping1. &ay dos acciones de redirección diferentes. 5a redirección de acción global y la de acción local.@sted puede tener acceso a una redirección de acción global en cada jsp o en la clase Action. @naredirección de acción local solamente puede ser accedida por la clase asignada.
23u" es un mapa de acción !action mapping#4El mapa de acción es el cora3ón de struts. >aneja todas las acciones entre la aplicación y el usuario.@sted puede definir 6uI acción será ejecutada creando un mapa de acción 0Action >apping1.
El diagrama le muestra+ cómo el ser:idor de aplicación maneja la petición del index.jsp o una acción nomapeada.
7/18/2019 131841990 Primeros Pasos Usando Struts y Eclipse Tutorial
En el primer paso creamos una nue:a acción mapeada. Abra el archi:o strutsBconfig.xml de laconfiguración de struts+ 6ue está situado en (eb9oot)(E!B#F=. Se abre la consola de struts. 0si no+botón derecho sobre strutsBconfig.xml y seleccióne Dopen withD.
>ar6ue Action >apping y y seleccione Add.
Escriba )default como 7ath y seleccione el tipo de acción =orward. @saremos como página debien:enida )jsp)default.js
p
En el paso siguiente crearemos la acción global forward. >ar6ue D<lobal =orwardsD+ seleccione DaddD.
Elija )default.do como 7ath+ 6ue es la acción 6ue especificamos antes.
Caso de uso: Listar los li$ros
7/18/2019 131841990 Primeros Pasos Usando Struts y Eclipse Tutorial
@na acción de struts siempre hace una cierta lógica del negocio y guarda el resultado en una clase deltipo Action=orm. 5os datos del Action=orm se pueden mostrar en un S7.
Fuestra Action leerá datos de una base de datos+ guardandolos en Action=orm. El S7 exhibirá nuestrosdatos.
Crear una clase "Libro" (?Book?)
Cree una clase nue:a 5ibro en el pa6uete de.laliluna.tutorial.library.
7/18/2019 131841990 Primeros Pasos Usando Struts y Eclipse Tutorial
En nuestra clase hemos definido cada :e3 una colección de libros y los
mItodos de acceso 0getters y setters1.El mItodo reset es llamado por strutscada :e3 6ue un formulario es iniciali3ado. Cuando su estructura es re6uerida+Iste es en cada petición.
Crear un Action !apping y una Action Class
Cree una clase !ook5istAction. Esta clase carga los libros de la base de datosy los guarda en !ook5ist=orm.
7/18/2019 131841990 Primeros Pasos Usando Struts y Eclipse Tutorial
Abra la clase book5istAction e implemente el mItodo execute desde la superclase Action=orm.5a llamada siguiente mapping.find=orward0Dshow5istD1 busca un forward con elnombre Dshow5istD en la declaración del Action >apping el declaración y seredirecciona.
/,,> ethod execute
> param mapping
> param form > param re8uest
> param response
> return CctionForward
>/
pu#lic CctionForward execute?
Cctionapping mapping
CctionForm form
,ttpDervletEe8uest re8uest
,ttpDervletEesponse response@ A
0ookistForm #ookistForm = ?0ookistForm@ form
/> lalinuna.de 53.66.;554 > inicia la clase Dimulate%0 9 pone algunos datos
Fo utili3aremos una base de datos :erdadera en este tutorial sino unasimulación de la base de datos. Copie el archi:o Simulate$!.ja:a del códigofuente 6ue proporcionamos como una descarga arriba del pa6uetede.laliluna.tutorial.library.
7/18/2019 131841990 Primeros Pasos Usando Struts y Eclipse Tutorial
5a marca Jlogic%iterate recorre la colección de libros del form beanbook5ist=ormCon la marca Jlogic%iterate se tiene acceso a las propiedades de un libro. 5amarca Jbean%write muestra la propiedad 0author+ title1 de la posición actual.Jhtml%checkbox crea una casilla de :erificación.
Esto es producción fuuuhh+ tenemos nuestro form !ean con una Action =ormClass+ nuestro Action >apping con su Action Class y S7+ y los ser:iciosnecesarios acti:os.
>uy bien. *enemos 6ue crear un action class 6ue gaurde los datos en unaction form. 7ara mostrar la lista de libros hemos creado un S7 6ue utili3a losdatos en action form. =ácil+ no.
Si 6uiere puede hacer una prueba de la aplicación ahora. >ire al final deltutorial como probarla.
Caso de uso: Agregar7 editar y $orrar datos
En la sección siguiente agregamos las funcionalidades de Agregar+ Editar y!orrar datos. El proceso es el mismo%
• Action• Action=orm•
Configuración Struts
&ue'o form bean
Cree una nue:a clase como action form en el pa6uetede.laliluna.tutorial.library.form . $enominelo !ookEdit=orm.
Agregue una nue:a instancia de libro 0!ook1.
0ook #ook = new 0ook?@
<enere los getters y setters. 5uego herede todos los mItodos de la clase !ook.
7/18/2019 131841990 Primeros Pasos Usando Struts y Eclipse Tutorial
public cla!! Book-itor* exten! +ctionor* { Book book = ne. Book()'
public Book getBook() { return book' } public oi !etBook(Book book) { t$i!&book = book' } public boolean eual!(0b1ect arg2) { return book&eual!(arg2)' } public #tring get+ut$or() { return book&get+ut$or()' } public long get3() { return book&get3()' } public #tring getTitle() {
return book&getTitle()' } public int $a!$Coe() { return book&$a!$Coe()' } public boolean i!+ailable() { return book&i!+ailable()' } public oi !et+ut$or(#tring aut$or) { book&!et+ut$or(aut$or)' } public oi !et+ailable(boolean aailable) { book&!et+ailable(aailable)'
} public oi !et3(long i) {
7/18/2019 131841990 Primeros Pasos Usando Struts y Eclipse Tutorial
book&!et3(i)' } public oi !etTitle(#tring title) { book&!etTitle(title)' } public #tring to#tring() {
return book&to#tring()' }}
Ahora podemos acceder a los atributos de libro en el action form.
Crear la action class
Cree una nue:a clase. Esta :e3 la clase no es una sub clase de Action pero s
de org.apache.struts.$ispatchAction.
@n $ispatchAction no ejecuta mItodos pero puede tener diferentes mItodosdependiendo del parámetro. Con el parámetro podemos decidir si el mItodollamado es crear)editar)borrar.
7/18/2019 131841990 Primeros Pasos Usando Struts y Eclipse Tutorial
/, lalinuna&e 27&88&9227 , inicia la cla!e #i*ulateB y borra un libro !egn el i ,/ #i*ulateB !i*ulateB = ne. #i*ulateB()' !i*ulateB&eleteBookBy3(i" reue!t&get#e!!ion())'
return *apping&finor.ar(;!$o.i!t;)'
}
El mItodo delete!ook obtiene el id de la solicitud y elimina el libro de la basede datos simulada. El forward show5ist actuali3a la lista de libros con la páginabook5ist.jsp
</table> <%?? fi1ar el par*etro para i!patc$ action ??%> <$t*l$ien property=;o; alue=;!aeBook; /> </$t*lfor*> </boy>
</$t*l>
5a eti6ueta Jhtml%form crea un nue:o formulario &*>5 y se refiere con elparámetro actionKbookEdit al action mapping. 5a eti6ueta Jhtml%text creaun campo de texto con la propiedad autor del libro.
Jhtml%hidden es un campo oculto con el nombre do. Fecesitamos este campooculto+ por6ue le dice a la clase dispatch action 6ue mItodo será llamado.
Abra el archi:o bookEdit.jsp. 7uede usar el código del archi:o bookAdd.jsp ycambiar las siguientes lneas.
<title+ditar un li#ro</title
Agregue la siguiente lnea Jhtml%hidden propertyKDdoD :alueKDsa:e!ookD )
<%?? Ca*po oculto ue contiene el i el libro ??%> <$t*l$ien property=;i; />
Cam$ios a la lista de li$ros 89P
A$ra el arcio $oo;List.(sp y cam$ie el código fuente: