tel./fax: +34 91 675 33 06 [email protected] - www ......3. creando el proyecto 4. integrando el...

7
Avenida de Castilla,1 - Edificio Best Point - Oficina 21B 28830 San Fernando de Henares (Madrid) tel./fax: +34 91 675 33 06 [email protected] - www.autentia.com Somos su empresa de Soporte a Desarrollo Informático. Ese apoyo que siempre quiso tener... 1. Desarrollo de componentes y proyectos a medida Tecnología Desarrollo Sistemas Gran Empresa Producción autentia Certificación o Pruebas Verificación previa RFP Concurso Consultora 1 Consultora 2 Consultora 3 Equipo propio desarrollo Piloto 3a 3b 1. Definición de frameworks corporativos. 2. Transferencia de conocimiento de nuevas arquitecturas. 3. Soporte al arranque de proyectos. 4. Auditoría preventiva periódica de calidad. 5. Revisión previa a la certificación de proyectos. 6. Extensión de capacidad de equipos de calidad. 7. Identificación de problemas en producción. 3. Arranque de proyectos basados en nuevas tecnologías ¿Qué ofrece Autentia Real Business Solutions S.L? Para más información visítenos en: www.autentia.com Compartimos nuestro conociemiento en: www.adictosaltrabajo.com Gestor portales (Liferay) Gestor de contenidos (Alfresco) Aplicaciones híbridas Tareas programadas (Quartz) Gestor documental (Alfresco) Inversión de control (Spring) BPM (jBPM o Bonita) Generación de informes (JasperReport) ESB (Open ESB) Control de autenticación y acceso (Spring Security) UDDI Web Services Rest Services Social SSO SSO (Cas) Spring MVC, JSF-PrimeFaces /RichFaces, HTML5, CSS3, JavaScript-jQuery JPA-Hibernate, MyBatis Motor de búsqueda empresarial (Solr) ETL (Talend) Dirección de Proyectos Informáticos. Metodologías ágiles Patrones de diseño TDD 2. Auditoría de código y recomendaciones de mejora 4. Cursos de formación (impartidos por desarrolladores en activo)

Upload: others

Post on 27-Jun-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: tel./fax: +34 91 675 33 06 info@autentia.com - www ......3. Creando el proyecto 4. Integrando el proyecto con el modelo 5. Creando la vista de detalle de la persona 6. Dar de alta

Avenida de Castilla,1 - Edificio Best Point - Oficina 21B28830 San Fernando de Henares (Madrid)

tel./fax: +34 91 675 33 [email protected] - www.autentia.com

Somos su empresa de Soporte a Desarrollo Informático.Ese apoyo que siempre quiso tener...

1. Desarrollo de componentes y proyectos a medida

TecnologíaDesarrolloSistemas

Gran Empresa

Producción

autentia

Certificacióno Pruebas

Verificación previa

RFP Concurso

Consultora 1

Consultora 2

Consultora 3

Equipo propio desarrolloPiloto

3a

3b

1. Definición de frameworks corporativos.2. Transferencia de conocimiento de nuevas arquitecturas.3. Soporte al arranque de proyectos.4. Auditoría preventiva periódica de calidad.5. Revisión previa a la certificación de proyectos.6. Extensión de capacidad de equipos de calidad.7. Identificación de problemas en producción.

3. Arranque de proyectos basados en nuevas tecnologías

¿Qué ofrece Autentia Real Business Solutions S.L?

Para más información visítenos en: www.autentia.com

Compartimos nuestro conociemiento en: www.adictosaltrabajo.com

Gestor portales (Liferay)Gestor de contenidos (Alfresco)Aplicaciones híbridas

Tareas programadas (Quartz)Gestor documental (Alfresco)Inversión de control (Spring)

BPM (jBPM o Bonita)Generación de informes (JasperReport)ESB (Open ESB)

Control de autenticación y acceso (Spring Security)UDDIWeb ServicesRest ServicesSocial SSOSSO (Cas)

Spring MVC, JSF-PrimeFaces /RichFaces, HTML5, CSS3, JavaScript-jQuery

JPA-Hibernate, MyBatisMotor de búsqueda empresarial (Solr)ETL (Talend)

Dirección de Proyectos Informáticos.Metodologías ágilesPatrones de diseñoTDD

2. Auditoría de código y recomendaciones de mejora

4. Cursos de formación (impartidos por desarrolladores en activo)

Page 2: tel./fax: +34 91 675 33 06 info@autentia.com - www ......3. Creando el proyecto 4. Integrando el proyecto con el modelo 5. Creando la vista de detalle de la persona 6. Dar de alta

E-mail:

Contraseña:

Inicio Quiénes somos Tutoriales Formación Comparador de salarios Nuestro libro Charlas Más

Deseo registrarmeHe olvidado mis datos deacceso

Entrar

Estás en:Inicio Tutoriales CRUD con Spring MVC Portlet

Catálogo de serviciosAutentia

Últimas Noticias

Hablando decoaching ágil,

milagro nocturo ypruebas de vida

XIII Charla Autentia- AOS y TDD -

Vídeos y Material

Las metodologíaságiles como el

catalizador del cambio

XIV Charla Autentia -ZK

Informáticaprofesional: Las

reglas no escritas paratriunfar en la empresa.2ª EDICIÓNACTUALIZADA.

Histórico deNOTICIAS

Últimos Tutoriales

REST y como hacercon jQuery un PUT

hacia Spring MVC

Selección múltiple defilas en un datatable

con JSF: haciendo usode librerías de

Share |

DESARROLLADO POR:Rubén Aguilera Díaz-Heredero

Consultor tecnológico de desarrollo de proyectosinformáticos.

Ingeniero en Informática, especialidad en Ingenieríadel Software

Puedes encontrarme en Autentia: Ofrecemos serviciosde soporte a desarrollo, factoría y formación

Somos expertos en Java/J2EE

Regístrate para votar

CRUD con Spring MVC Portlet

0. Índice de contenidos.

1. Entorno2. Introducción3. Creando el proyecto4. Integrando el proyecto con el modelo5. Creando la vista de detalle de la persona6. Dar de alta personas7. Vamos a probarlo8. Conclusiones

1. Entorno

Este tutorial está escrito usando el siguiente entorno:

Hardware: Portátil Mac Book Pro 17" (2,6 Ghz Intel Core i7, 8 GB DDR3)Sistema Operativo: Mac OS X Snow Leopard 10.6.4Spring MVC Portlet 3.0.4Maven 2.2.1Eclipse 3.6 (Helios) con M2EclipseLiferay 6.0.5

2. Introducción

En este tutorial se plantea como continuación del tutorial Ejemplo básico con Spring MVC Portlet. Eneste ocasión vamos a "enriquecer" el ejemplo realizando un portlet que nos permita realizar todas lasoperaciones CRUD contra una entidad. Para realizar las operaciones contra la base de datos me voy aapoyar en el proyecto que creamos en este tutorial Librería de acceso a datos con Spring y JPA

3. Creando el proyecto

Para crear el proyecto tenemos que seguir los mismos pasos que encontramos en este otro tutorial:

4Fecha de publicación del tutorial: 2011-02-15

Anuncios Google JSP Servlet JSP Shopping Cart Test JSP File

Page 3: tel./fax: +34 91 675 33 06 info@autentia.com - www ......3. Creando el proyecto 4. Integrando el proyecto con el modelo 5. Creando la vista de detalle de la persona 6. Dar de alta

Síguenos a través de:

componentes.

Selección múltiple defilas en un datatable

con JSF: haciéndolonosotros mismos.

Gestión del eventode cambio de valor

en JSF2:valueChangeListener.

Jackson y comodeserializar objetos

JSON usando unconstructor

Últimos Tutoriales delAutor

Librería de acceso adatos con Spring y

JPA

Ejemplo de SwingWorker: ¿Por qué se

me congela la interfaz?

Utilización deCommons Digester

para un sistema depreferenciasconfigurable

Ejemplo básico deSpring MVC Portlet

Trabajando con losWeb Services de

Liferay

Últimas ofertas deempleo

2010-10-11Comercial - Ventas -SEVILLA.

2010-08-30Otras - Electricidad -BARCELONA.

2010-08-24Otras Sin catalogar -LUGO.

2010-06-25T. Información -Analista /

Programador -BARCELONA.

Ejemplo básico con Spring MVC Portlet.

Lo único que va a cambiar (si queréis) es el nombre del artifactId, el cual vamos a llamar spring-mvc-crud-portlet.

4. Integrando el proyecto con el modelo

En el tutorial Librería de acceso a datos con Spring y JPA vimos como crear el modelo de datos quevamos a integrar ahora con nuestro proyecto.

Para integrar el modelo tenemos que añadir la dependencia en el pom.xml de nuestro proyecto, deesta forma:

view plain print ?

!"#$ !"#$#%"#%&'($$!%#$ $$$$!)*+,$-"(&'(#)*+,-+.)!.)*+,$-"($$!/#$ $$$$!/*0-1/&0-"(('0,12+*+'3.)1,4!./*0-1/&0-"($$!5#$ $$$$!2#*3-+%("#!267896:;<!.2#*3-+%($$!=#$ !."#$#%"#%&'($$

Ahora para poder utilizar esta dependencia en nuestro proyecto tenemos que editar el fichero WEB-INF/context/applicationContext.xml de nuestro proyecto para añadir la siguiente línea:

view plain print ?

!"#$ !-4$+*0$3,4'*3&,>?&1)44@)+AB)@@1.&)+.'-2&'-+,C+2('0,12+*+'3.)1,4#C(1?$.($$

Lo que estamos haciendo es incorporando la configuración de Spring de nuestro modelo en nuestroproyecto, por lo que ya sólo tendremos que declarar los DAOs para poder utilizarlos en nuestras clases.

5. Creando la vista de detalle de la persona

Ahora vamos a crear el fichero detalle_persona.jsp dentro de la carpeta jsp/spring-crud-mvc-portletcon el siguiente contenido:

view plain print ?

!"#$ !DE$+)F1.G$*3.>?A++@BHHI)J)#4*-#&'(H@'3+1,+?$@3,K.C>?@'3+1,+?D($$!%#$ !DE$+)F1.G$*3.>?A++@BHHLLL#[email protected])(,L'3M#'3FH+)F4?$@3,K.C>[email protected]?D($$!/#$ !DE$+)F1.G$*3.>?A++@BHHLLL#[email protected])(,L'3M#'3FH+)F4HK'3(?$@3,K.C>?K'3(?D($$!5#$ $$!=#$ $$!N#$ !$+*05#06"#1-%#789#&03$.($$!O#$ $$!P#$ !$+*05#06/&0-+%,*5$J)3>?,I,&*+)38&&.'-QRS?$-)(,>?,I,&*+)38&&.'-?($$!T#$ $$$$!$+*05#06$/*/4$-)(,>?)&&.'-?$J)1*,>?UVK*+*3)8&&.'-W?($$"!#$ !.$+*05#06$/*/4(!.$+*05#06/&0-+%,*5($$""#$ $$"%#$ !1+*461+*4$)&+.'->?UV,I,&*+)38&&.'-QRSW?$&'(()-0-)(,>?@,34'-)X'3(?($$"/#$ $$$$!1+*46:-""#%$@)+A>?.09,34'-)?.($$"5#$ $$$$!$($$"=#$ $$$$$$$$!3$*-%)64#33/)#$&'0,>?@,34'-)#-'(G3,?$.($$"N#$ $$$$$$$$!1+*46-%$,0$@)+A>?-'(G3,?$.($$"O#$ $$$$!.$($$"P#$ $$$$!$($$"T#$ $$$$$$$$!3$*-%)64#33/)#$&'0,>?@,34'-)#)@,11.0'4?$.($$%!#$ $$$$$$$$!1+*46-%$,0$@)+A>?)@,11.0'4?$.($$%"#$ $$$$!.$($$%%#$ $$$$!$($$%/#$ $$$$$$$$!3$*-%)64#33/)#$&'0,>?@,34'-)#0.3,&&.'-?$.($$%5#$ $$$$$$$$!1+*46-%$,0$@)+A>?0.3,&&.'-?$.($$%=#$ $$$$!.$($$%N#$ $$$$!3$*-%)64#33/)#$&'0,>?UVK*+*3)8&&.'-W?$J)3>?K'3(Y-J.)3?.($$%O#$ $$$$!3$*-%)64#33/)#$&'0,>?K'3(#&)-&,1)3?$J)3>?K'3(Z)-&,1)3?.($$%P#$ $$$$!-%$,0$+[@,>?4*G(.+?$J)1*,>?UVK'3(Y-J.)3W?.($$%T#$ $$$$!-%$,0$+[@,>?4*G(.+?$J)1*,>?UVK'3(Z)-&,1)3W?$-)(,>?K'3(#&)-&,1)3?.($$/!#$ !.1+*461+*4($$

Lo único que estamos haciendo es crear un formulario que nos va a servir para ver el detalle de unapersona y poder hacer un alta, una modificación o eliminarla. Por ahora nos vamos a centrar en el altade la persona.

Destacar que para crear el formulario estamos utilizando tags de spring, form se refiere a loscomponentes del formulario y spring:message nos permite internacionalizar los mensajes.

Para dar de alta el fichero de mensajes tenemos que añadir lo siguiente al ficheroapplicationContext.xml de nuestro proyecto:

Page 4: tel./fax: +34 91 675 33 06 info@autentia.com - www ......3. Creando el proyecto 4. Integrando el proyecto con el modelo 5. Creando la vista de detalle de la persona 6. Dar de alta

view plain print ?

!"#$ !"#$%$%&'()*++,-*./012*($23,++'(/1-#+41%5-61,)*7/18#2/59*:9#+044/19#;*+/012*<05&3*=*++,-*./012*(&$$!>#$ $$$$$$$$!'()'#(*+$5,)*'(0+*?/&*@+A*6,039=*++,-*($B,30*'(910*($,&$$!C#$ $$$$$$$$!'()'#(*+$5,)*'(D,+*5,)*+(&$$!E#$ $$$$$$$$$$$$!-./*&$$!F#$ $$$$$$$$$$$$$$$$!0$-1#&)*++,-*+!,0$-1#&$$!G#$ $$$$$$$$$$$$!,-./*&$$!H#$ $$$$$$$$!,'()'#(*+&$$!I#$ $$$$!,"#$%&$$

Con esta configuración tenemos que crear el fichero messages.properties dentro de la carpetasrc/main/resources donde vamos a registrar todas las claves que utilicemos.

Declarando la propiedad "useCodeAsDefaultMessage" a "true" conseguimos que si Spring no encuentrala clave del mensaje pinte el texto de la clave, en vez de dar un error de despliegue.

Además hemos declarado en el atributo commandName del formulario que vamos a utilizar un beanllamado personaForm que representa los campos del formulario y permite a Spring mapear los camposdel formulario, va a tener siguiente contenido:

view plain print ?

!"#$ '$23$4#$2/)#,09*59%,#+41%5-210&)B24/193*9#6/1)+J$$!>#$ $$!C#$ .5')(*$K,B,#%/#.*1%,3%L,D3*J$$!E#$ $$!F#$ .5')(*$2/)#,09*59%,#909/1%,3*+#)/&*3#M*1+/5,J$$!G#$ .5')(*$2/)#,09*59%,#909/1%,3*+#)/&*3#K4,#M*1+/5,NM@J$$!H#$ $$!I#$ '1"-.2$2-$//$M*1+/5,O/1)$.5'-#5#%*/$.*1%,3%L,D3*P$$!Q#$ $$$$$$"!#$ $$$$'(.0$*#$/*$*.2$6.%$-$-)%4$+*1%,3R*1+%/5STA$'$UIE>F>GHF!!ECF>"QHQ!VJ$$""#$ $$$$'(.0$*#$V/5-$%&M*1+/5,J$$">#$ $$$$'(.0$*#$.91%5-$5/)D1*J$$"C#$ $$$$'(.0$*#$.91%5-$,4*33%&/+J$$"E#$ $$$$'(.0$*#$.91%5-$&%1*22%/5J$$"F#$ $$$$$$"G#$ $$$$'1"-.2$M*1+/5,O/1)WXPY$$"H#$ $$$$$$"I#$ $$$$'1"-.2$M*1+/5,O/1)WM*1+/5,NM@$4*1+/5,NM@XP$$"Q#$ $$$$$$$$*7./#%&M*1+/5,$'$4*1+/5,NM@#-*9T&M*1+/5,WXJ$$>!#$ $$$$$$$$*7./#5/)D1*$'$4*1+/5,NM@#-*9Z/)D1*WXJ$$>"#$ $$$$$$$$*7./#,4*33%&/+$'$4*1+/5,NM@#-*9@4*33%&/+WXJ$$>>#$ $$$$$$$$*7./#&%1*22%/5$'$4*1+/5,NM@#-*9A%1*22%/5WXJ$$>C#$ $$$$Y$$>E#$ $$$$$$>F#$ $$$$'1"-.2$V/5-$-*9T&M*1+/5,WX$P$$>G#$ $$$$$$$$(#*1(%$%&M*1+/5,J$$>H#$ $$$$Y$$>I#$ $$$$'1"-.2$0).8$+*9T&M*1+/5,WV/5-$%&M*1+/5,X$P$$>Q#$ $$$$$$$$*7./#%&M*1+/5,$'$%&M*1+/5,J$$C!#$ $$$$Y$$C"#$ $$$$'1"-.2$.91%5-$-*9Z/)D1*WX$P$$C>#$ $$$$$$$$(#*1(%$5/)D1*J$$CC#$ $$$$Y$$CE#$ $$$$'1"-.2$0).8$+*9Z/)D1*W.91%5-$5/)D1*X$P$$CF#$ $$$$$$$$*7./#5/)D1*$'$5/)D1*J$$CG#$ $$$$Y$$CH#$ $$$$'1"-.2$.91%5-$-*9@4*33%&/+WX$P$$CI#$ $$$$$$$$(#*1(%$,4*33%&/+J$$CQ#$ $$$$Y$$E!#$ $$$$'1"-.2$0).8$+*9@4*33%&/+W.91%5-$,4*33%&/+X$P$$E"#$ $$$$$$$$*7./#,4*33%&/+$'$,4*33%&/+J$$E>#$ $$$$Y$$EC#$ $$$$'1"-.2$.91%5-$-*9A%1*22%/5WX$P$$EE#$ $$$$$$$$(#*1(%$&%1*22%/5J$$EF#$ $$$$Y$$EG#$ $$$$'1"-.2$0).8$+*9A%1*22%/5W.91%5-$&%1*22%/5X$P$$EH#$ $$$$$$$$*7./#&%1*22%/5$'$&%1*22%/5J$$EI#$ $$$$Y$$EQ#$ $$F!#$ Y$$

6. Dar de alta personas

Para el alta de personas lo primero que vamos a hacer es crear el fichero listado_personas.jsp que vaa ser la vista principal de nuestro portlet y desde donde vamos a llamar a la acción de añadir unapersona, el contenido de este fichero es el siguiente:

Page 5: tel./fax: +34 91 675 33 06 info@autentia.com - www ......3. Creando el proyecto 4. Integrando el proyecto con el modelo 5. Creando la vista de detalle de la persona 6. Dar de alta

view plain print ?

!"#$ !%&$'()*+,$-.+/01''23445(6(#7-8#9:;42:.'*<'0$2.<=+>/02:.'*<'0%"$$!?#$ !%&$'()*+,$-.+/01''2344@@@#72.+8)=.(;<@:.A#:.)4'()70$2.<=+>/072.+8)0%"$$!B#$ !%&$'()*+,$-.+/01''2344@@@#72.+8)=.(;<@:.A#:.)4'()74=:.;0$2.<=+>/0=:.;0%"$$!C#$ !%&$'()*+,$2.<=+>/090$-.+/01''23445(6(#7-8#9:;457'*49:.<D.'0$%"$$!E#$ $$!F#$ !#$%&'(&)*(+,-(./0(1&2$3"$$!G#$ $$!H#$ !1),+$'<7'/0IJ;7)7'('-7$K/$8-**L0"$$!M#$ !#$9*(77/02:.'*<'N;7)N7-99<770"IJ;7)7'('-7L!3#"$$"!#$ !31),+"$$""#$ $$"?#$ !#$%&'(&)%(-*(%4%'$6(./0O<'(**<P<.7:8(Q*'(RST0"$$"B#$ $$$$!#$%&'(&)#5%56$8(;</0=-'-.(Q99+:80$6(*-</09.-O#(*'(0"!3#$%&'(&)#5%56"$$"C#$ !3#$%&'(&)%(-*(%4%'"$$"E#$ !#"!5$1.<=/0IJO<'(**<P<.7:8(Q*'(RSTL0"!2#%,-7)6(2257($9:O</0=:.;#(8(O+.P<.7:8(03"!35"!3#"$$

Con la etiqueta portlet:renderURL estamos creando la URL necesaria para poder navegar a la ventanade detalle indicando que la acción que se quiere realizar es el alta.

Para visualizar este jsp como pantalla por por defecto de nuestro portlet lo único que tenemos quehacer indicarlo en la función marcada con @RequestMapping de esta manera:

view plain print ?

!"#$ &S<U-<7'V(22+8)$$!?#$ #%$&(1&(*$+,-5'$W'.+8)$O<=(-*'X+<@YV:O<*$;:O<*Z$J$$!B#$ $$$$%(&4%-$0*+7'(O:D2<.7:8(70[$$!C#$ L$$

De esta forma lo primero que veremos al cargar el portlet será un enlace a la pantalla que nos permitedar de alta una persona, que no es otra que detalle_persona.jsp

Para redireccionar nuestro portlet a esta pantalla, primero tenemos que capturar la acción de renderde esta forma:

view plain print ?

!"#$ &S<U-<7'V(22+8)Y2(.(;7$/$0=-'-.(Q99+:80Z$$!?#$ #%$&(1&(*$+,-5'$W'.+8)$.<O+.<9'RSTYV:O<*$;:O<*\$$!B#$ $$$$&S<U-<7'P(.(;Y0=-'-.(Q99+:80Z$W'.+8)$=-'-.(Q99+:8Z$J$$!C#$ $$!E#$ $$$$,+$Y09.-O#(*'(0#<U-(*7Y=-'-.(Q99+:8ZZ$J$$!F#$ $$$$$$$$;:O<*#(OOQ''.+,-'<Y02<.7:8(]:.;0\$-(8$P<.7:8(]:.;YZZ[$$!G#$ $$$$L$$$!H#$ $$$$;:O<*#(OOQ''.+,-'<Y0=-'-.(Q99+:80\$=-'-.(Q99+:8Z[$$!M#$ $$$$%(&4%-$0O<'(**<D2<.7:8(0[$$"!#$ L$$

Con la anotación @RequestMapping(params="futuraAccion") lo que hacemos es declarar que estemétodo de render se va ejecutar cuando en la URL se esté pasando un parámetro llamado"futuraAccion" independientemente de su valor.

Con la anotación @RequestParam("futuraAccion") estamos recuperando el valor concreto de eseparámetro, el cual vamos a introducir en el modelo ya que nos va a servir para determinar que accióntiene que ejecutar el botón de acción del formulario de detalle de la persona.

Ahora tenemos que crear el método que se va encargar de realizar la persistencia de la persona, elcual se va invocar cuando exista el parámetro "ejecutarAccion" dentro de la URL y el parámetro"accion" coincida con el texto "crud.alta". Con lo que el método quedaría declarado de esta forma:

Page 6: tel./fax: +34 91 675 33 06 info@autentia.com - www ......3. Creando el proyecto 4. Integrando el proyecto con el modelo 5. Creando la vista de detalle de la persona 6. Dar de alta

view plain print ?

!"#$ %&'()*+,'$$$!-#$ !"#$%&'$.'+()/0123$4'+()/01235$$!6#$ $$!7#$ %&'()*+,'$$!8#$ !"#$%&'$&'()*+,'9*/:;'<'((0='>)*+,'$?'((0='(5$$!@#$ AAA$$!B#$ %&'C*'(D<044E/=F40+0?($G$HIJ0K0L#4)+D;'D#0,DE)/G'J',*D0+2,,E)/IM$I0,,E)/G,+*:#0;D0INO$$!P#$ !"(&')&'*$+#,%-$$(#*$E/('+D0+.'+()/0F$$!Q#$ $$$$%<):';2DD+ER*D'FI4'+()/0S)+?IO$.'+()/0S)+?$4'+()/0S)+?M$$"!#$ $$$$%&'C*'(D.0+0?FI0,,E)/IO$>D+E/=$0,,E)/M$$""#$ $$$$%&'C*'(D.0+0?F+'C*E+':G+%-.'M$K0;*'GIT)+?#,0/,';0+IO$>D+E/=$,0/,';0+O$H$$"-#$ $$$$$$$$$$"6#$ $$$$#+$F(EU(*0+E)V)W0/,';02,,E)/F,0/,';0+OO$H$$"7#$ $$$$$$$$4'+()/0123#E/('+DF4'+()/0S)+?#='D.'+()/0FOO5$$"8#$ $$$$$$$$?):';#0::2DD+ER*D'FI?(=(D0D*(IM$$$"@#$ $$$$$$$$?'((0='(#='D<'((0='FI(D0D*(#)XIM$,/--M$Y),0;'W)/D'LDZ);:'+#='DY),0;'FOOO5$$"B#$ $$$$N$$"P#$ N$$

En caso de que el usuario pulse en el botón de cancelar, no hacemos nada, y si pulsa en el botón dealta, directamente introducimos esa información en la base de datos apoyándonos en nuestro proyectomodel-tutoriales.

En un caso "real" seguramente no interese hacer directamente el acceso a la base de datos desde elcontrolador y habrá que crear una capa de servicios que se encargue de hacer este acceso, para poderreutilizar el código o crear una capa de REST, por ejemplo. El diseño dependerá del alcance de nuestroproyecto.

Como no decimos lo contrario, después de ejecutar este método el portlet mostrará la vista pordefecto, mostrando un mensaje proceso realizado correctamente.

7. Vamos a probarlo

Para probar nuestro desarrollo, lo único que tenemos que ejecutar mvn clean package de nuestroproyecto, y desplegar nuestro .war en el servidor de Liferay. En caso de utilizar el plugin de Liferay, lopodemos hacer directamente ejecutando: mvn liferay:deploy, esta acción NO realiza previamente elpackage del proyecto.

Una vez desplegado correctamente, instanciamos el portlet en cualquier página de nuestro portal ydeberíamos ver algo pareciado a esto:

Para acceder a la pantalla de alta, pinchamos en el enlace que se muestra, rellenamos los datos delformulario y pulsamos en el botón de alta, con lo que si vamos a la base de datos configuradapodremos ver que efectivamente se ha insertado nuestro registro.

8. Conclusiones

Lo vamos a dejar aquí, en el próximo tutorial vamos a ver como mostrar un listado con todos laspersonas que vamos dando de alta, utilizando la librería displaytags que nos permite tener tablaspaginadas de una forma muy cómoda. Además, en posteriores tutoriales, veremos como modificar yeliminar personas, como añadir validación a nuestro formulario y hacer pruebas unitarias.

Cualquier duda o sugerencia en la zona de comentarios.

Page 7: tel./fax: +34 91 675 33 06 info@autentia.com - www ......3. Creando el proyecto 4. Integrando el proyecto con el modelo 5. Creando la vista de detalle de la persona 6. Dar de alta

Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5

Puedes opinar o comentar cualquier sugerencia que quieras comunicarnos sobre este tutorial; contu ayuda, podemos ofrecerte un mejor servicio.

Enviar comentario (Sólo para usuarios registrados)

» Registrate y accede a esta y otras ventajas «

Anímate y coméntanos lo que pienses sobre este TUTORIAL:

Saludos.

COMENTARIOS

Copyright 2003-2011 © All Rights Reserved | Texto legal y condiciones de uso | Banners | Powered by Autentia |Contacto