Está en la página 1de 16

CIBERTEC Direccin de Extensin Profesional DIVISIN DE ALTA TECNOLOG A !

DAT" Pro#ra$a % C&rso Java Master Application Developer % Construyendo la Capa de Presentacin de la Aplicacin

La'oratorio N( )*+
Co$,rendiendo la ar-&itect&ra de Str&ts )

O'.eti/o% Comprendiendo la arquitectura de Struts 2 +* Prepare el Proyecto Web con soporte de Struts 2.

Acti/idades 1.1 Cree el nuevo proyecto Web con nombre aboratorio2!1. "a#a clic derec$o en %ona blanca de pesta&a Pro'ects.

Seleccione Java Web ( Web Application.

)n#rese el nombre de Proyecto.

"a#a clic en *inis$.

1.2 Cree los si#uientes paquetes+

1., -e.erencie las ibrer/as de Struts 2. Seleccione Propiedades

Seleccione la opcin ibraries y $a#a clic en el botn Add JA-(*older.

Seleccione librerias e indique -e.erence as -elative Pat$.

"a#a clic en 01.

1.2 Arc$ivo de con.i#uracin de Struts Cree el arc$ivo struts.3ml. Presione clic derec$o en la ra/% de Source Pac1a#e4 5e64 0t$er.

Seleccione Web ( 7M Document.

)n#rese el nombre de arc$ivo+ struts.

"a#a clic en *inis$.

1.8

Contenido 9ase de Arc$ivo de con.i#uracin de Struts A&ada el si#uiente cdi#o+ <?xml version="1.0" encoding="UTF-8" ?> <!DOCT !" s#r$#s !U%&'C "-(()*+c,e -o.#/+re Fo$nd+#ion((DTD -#r$#s Con.ig$r+#ion 0.1(("2" ",##*3((s#r$#s.+*+c,e.org(d#ds(s#r$#s-0.1.d#d"> <s#r$#s>

<(s#r$#s>

1.: Cree arc$ivo 6eb.3ml.

1.; -e#istre el *iltro de Struts 2. A&ada el si#uiente cdi#o en 6eb.3ml. <filter>


<filter-name>struts2</filter-name> <filterclass>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> </filter> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>

Ya tenemos lista la configuracin del proyecto con Soporte de Struts 2.

10

)* I$,le$ente los si#&ientes ,rototi,os%

2.1Cree dos p<#inas JSP. "a#a clic derec$o en Web Pa#es.

a primera p<#ina con nombre ,aso+*

-epetir lo mismo para la se#unda p<#ina con nombre ,aso)*

11

2.2

A&ada un lin1 en inde3.'sp que redireccione a paso1.'sp a traves de Struts 2. struts.3ml+ re#istrar ActionMappin# a. A#re#ue pac1a#e

b. De.ina ActionMappin#

12

)nde3.'sp+ )nvocar a Action desde in1

Pruebe la Aplicacin

2., A&ada un .ormulario con un botn en paso1.'sp que redireccione a un Action4 el cual =nicamente redireccionar< a paso2.'sp a trav>s de un -esult. Action+ Cree laclase Paso2Action en el paquete pe.edu.cibertec.action

Paso24 Action.'ava+ A&ada el m>todo e3ecute?@ que retorne el te3to AsuccessB.

13

14

struts.3ml+ re#istre Action Mappin# para Paso2Action.

Paso1.'sp+ Dise&e el .ormulario cuyo action re.erencie a Paso2Action.

Pruebe la Aplicacin.

15

Consideraciones 1. 0bserve que en ambos casos no se e'ecuta l#ica al#una4 simplemente se redirecciona a un recurso 6eb. a. Cn el primer caso4 no se especi.ica una clase4 entonces por de.ecto el .rame6or1 invoca a una clase llamada ActionSupport. b. Cn el se#undo caso4 se especi.ica una clase P0J0 que tiene de.inido un m>todo que retorna un ob'eto Strin#. Cste retorna indica que -esult se debe utili%ar para #enerar la vista4 2. Cs recomendable que toda Solicitud siempre pase por el marco de traba'o de Struts y no acceda directamente a vistas. Csto para que la solicitud ten#a el soporte de Struts4 lo cual permite por e'emplo $acer un Post9ac1. C'emplo Paso 2.'sp+ A&ada un .ormulario cuyo action est> en blanco.

Paso2Action.'ava+

A&ada el punto de interrupcin en m>todo e3ecute.

Pruebe nuevamente la Aplicacin4 pero est< ve% como modo depuracin.

0bserve que cada ve% que se env/a .ormulario de paso2.'sp4 se invoca al action Paso2Action.

16