Está en la página 1de 9

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( )*+
,anteni$iento de c&rsos de GCO'.eti/o% Mantenimiento de cursos de GCH

Mantenimiento de cursos de GCH. Se tiene el siguiente modelo de datos:

Se pide a usted implementar con Struts 2 la ca0a de 0resentacin para el ,anteni$iento de C&rsos utili ando los componentes de este marco de tra!a"o como lo son Actions# $ag %i!s# i&'n# (alidators# $iles# etc. 1

Acti/idades &. )mporte el proyecto con nom!re *%a!oratorio2+,-. 2. )mplemente la .uncionalidad de los prototipos mostrados. Prototi0os Listado*.s0

Cdigo /uente

012tagli! pre.i345s5 uri456struts7tags518 09280s:te3t name45titulo.curso.mantenimiento56806928 0s:.orm8 0s:su!mit value451:get$e3t;<.orm.!oton.!uscar<=>5 action45!uscar5 t9eme45simple568 0s:su!mit value451:get$e3t;<.orm.!oton.nuevo<=>5 action45nuevo5 t9eme45simple568 06s:.orm8 09r68 0s:i. test45?session.cursos.si e8@58 0ta!le class45ta!la58 0t9ead8 0tr8 0t980s:te3t name45.orm.codigo56806t98 0t980s:te3t name45.orm.descripcion56806t98 0t980s:te3t name45.orm.precio56806t98 0t980s:te3t name45.orm.duracion56806t98 0t9806t98 0t9806t98 06tr8 06t9ead8

0t!ody8 0s:iterator value45?session.cursos58 0tr8 0td80s:property value45codigo56806td8 0td80s:property value45descripcion56806td8 0td80s:property value45precio56806td8 0td80s:property value45duracion56806td8 0td8 0s:url action45!uscarPA5 id45!uscarPA58 0s:param name45curso.codigo58 0s:property value45codigo568 06s:param8 06s:url8 0s:a 9re.451:!uscarPA>58 0s:te3t name45enlace.actuali ar568 06s:a8 06td8 0td8 0s:url action45eliminar5 id45eliminar58 0s:param name45curso.codigo58 0s:property value45codigo568 06s:param8 06s:url8 0s:a 9re.451:eliminar>58 0s:te3t name45enlace.eliminar568 06s:a8 06td8 06tr8 06s:iterator8 06t!ody8 06ta!le8 06s:i.8

edicion*.s0

<%@taglib prefix="s" uri="/struts-tags"%> <s:if test="curso.codigo == null"> <h1> <s:text name="titulo.nue o"> <s:param><s:text name="modulo.curso"/></s:param> </s:text> </h1> </s:if> <s:else> <h1> <s:text name="titulo.actuali!ar"> <s:param><s:text name="modulo.curso"/></s:param> </s:text> </h1> </s:else> <s:form action="editar" namespace="/cursos"> <s:hidden name="curso.codigo"/> <s:select list=""session.programas" list#e$="codigo" list%alue="descripcion" name="curso.programa.codigo" &e$="form.programa" re'uired="true"/> <s:textfield &e$="form.descripcion" name="curso.descripcion" re'uired="true"/> <s:textarea &e$="form.ob(eti o" name="curso.ob(eti o" re'uired="true" cols="1)"/> <s:textarea &e$="form.re'uisito" name="curso.re'uisito" re'uired="true" cols="1)"/> <s:textfield &e$="form.precio" name="curso.precio" re'uired="true"/> <s:textfield &e$="form.duracion" name="curso.duracion" re'uired="true"/> <s:radio list=""*+1+:get,ext-+estado.no.acti o+/0+1+:get,ext-+estado.acti o+/2" name="curso.estado" &e$="form.estado" re'uired="true"/> <s:submit alue="%*get,ext-+form.boton.guardar+/2" action="editar"/> <s:reset alue="%*get,ext-+form.boton.limpiar+/2"/> </s:form> <s:actionmessage/>

B.

Codi.iCue los Action C&rsoAction%

D.

Codi.iCue los ActionMapping. str&ts*x$l

str&ts1c&rso*x$l

$area complementaria:

&. 2.

En str&ts1c&rso*x$l2 con.igure #lo'al1res&lts para d+editarCurso d+listadoCurso. En !ase a la pregunta &# realice los cam!ios necesarios en C&rsoAction.