SlideShare uma empresa Scribd logo
1 de 13
Desarrollo de portlets JSF con
Liferay Faces
Juan González del Pino
Sofware Engineer – OCMJEA 6, Liferay
Contenido
• Java Server Faces
●
Historia
●

Cómo funciona

●

Ventajas

• Liferay Faces
●
Historia
●

Características

• Demo Liferay Faces
JSF - Historia
●

JSF 1.0 (JSR 127) → Marzo 2004

●

JSF 1.1 → Mayo 2004

●

JSF 1.2 (JSR-252) → 2006

●

JSF 2.0 (JSR-314) → 2009
●

●

●

Corrige gran parte de las carencias de la versión anterior
Bookmarkable URL, composite components...

JSF 2.2 (JSR-344) → 2013
●

Faces Flows, Stateless views, HTML5 passthrough...
JSF – Cómo funciona
●

Varias implementaciones:
●

Mojarra

●

MyFaces

●

Basado en componentes (UI)

●

La vista se genera y procesa en servidor

●

●

Gran parte de las tareas están automatizadas
(formulario, validación, recursos y dependencia)
CDI (JSR-299)
●

●

●

Context and Dependency Injection
@Inject private SessionBean sessionBean

Fases de una petición JSF
JSF – Cómo funciona - Fases
JSF - Ventajas
●

Estándar

●

Basado en componentes:
●

●

Reutilización (loose coupling)

●

Cohexistencia de distintos proveedores (< vendor lock-in)

●

●

Separación de tareas UI ↔ backend (vs JSP y scriptlets)

UI personalizado por cada dispositivo

La vista se genera en el servidor:
●

●

Seguridad (form spoofing)

Tareas automatizadas, CDI:
●

Productividad
JSF – Componentes
Liferay Faces - Historia
●

●

●

Comenzado como proyecto Portletfaces (Mimacom
y Triton)
2012: se contribuye el proyecto a Liferay → Liferay
Faces (Neil Griffin).
Agosto 2012:
●

●

●

2.x (JSF 1.2)
3.x (JSF 2.1).

Actualidad:
●

2.1.4

●

3.1.4

●

4.x → Compatibilidad con JSF 2.2
Liferay Faces - Características
●

Puente (Bridge) entre ciclo de vida Portlet y JSF.

●

Soporte CDI

●

Componentes:
●

Liferay (<liferay-ui:captcha/>..)

●

AUI

●

Más componentes próximamente

●

JSF + Liferay: permisos, service builder...

●

Utilidades disponibles:
●

LiferayFacesContext.getInstance().getThemeDisplay()

●

#{liferayFacesContext.themeDisplay}
Liferay Faces – Demo
●

Crear a partir de arquetipo maven:
●

●

liferay-portlet-primefaces-archetype

●

liferay-portlet-icefaces-archetype

●

liferay-portlet-richfaces-archetype

●

●

liferay-portlet-jsf-archetype

liferay-portlet-liferay-faces-alloy-archetype

Crear a partir de Liferay IDE
●

Soporte Apache Ivy (dependencias)
Liferay Faces - Demo
●

Atención a:
●

Look & Feel

●

XHTML vs JSP y Scriptlets

●

●

Unión entre vista y backend mediante Expression
Language
Facilidad para añadir componentes/funcionalidades
(AJAX)

●

Ausencia de javascript/css

●

“Separation of concerns” (SoC)
Liferay Faces – Demo
→

→

¿Javascript y CSS?
Más información en:
http://www.liferay.com/community/liferay-projects/liferay-faces

¡GRACIAS!
¿PREGUNTAS?
juan.gonzalez@liferay.com
@gonpinju

Mais conteúdo relacionado

Semelhante a Desarrollo de portlets JSF con Liferay Faces

Semelhante a Desarrollo de portlets JSF con Liferay Faces (7)

Taller introducción Java EE 7 @UAPA
Taller introducción Java EE 7  @UAPATaller introducción Java EE 7  @UAPA
Taller introducción Java EE 7 @UAPA
 
Dentro de un Backend
Dentro de un BackendDentro de un Backend
Dentro de un Backend
 
Frameworks J2EE
Frameworks J2EEFrameworks J2EE
Frameworks J2EE
 
Java mission control para monitoreo, administración y profilig de aplicacion...
Java mission control para monitoreo, administración y profilig de aplicacion...Java mission control para monitoreo, administración y profilig de aplicacion...
Java mission control para monitoreo, administración y profilig de aplicacion...
 
Api joomla!.key
Api joomla!.keyApi joomla!.key
Api joomla!.key
 
Netbeans Osum
Netbeans OsumNetbeans Osum
Netbeans Osum
 
Emagister
EmagisterEmagister
Emagister
 

Último

GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..RobertoGumucio2
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMidwarHenryLOZAFLORE
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxAlexander López
 
Hernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxHernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxJOSEMANUELHERNANDEZH11
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
Segunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxSegunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxMariaBurgos55
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptJavierHerrera662252
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaarkananubis
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxJOSEFERNANDOARENASCA
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son241514984
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELmaryfer27m
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptMiguelAtencio10
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativaAdrianaMartnez618894
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 

Último (20)

GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptx
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
 
Hernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxHernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptx
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
Segunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxSegunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptx
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en mina
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptx
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFEL
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.ppt
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativa
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 

Desarrollo de portlets JSF con Liferay Faces

  • 1. Desarrollo de portlets JSF con Liferay Faces Juan González del Pino Sofware Engineer – OCMJEA 6, Liferay
  • 2. Contenido • Java Server Faces ● Historia ● Cómo funciona ● Ventajas • Liferay Faces ● Historia ● Características • Demo Liferay Faces
  • 3. JSF - Historia ● JSF 1.0 (JSR 127) → Marzo 2004 ● JSF 1.1 → Mayo 2004 ● JSF 1.2 (JSR-252) → 2006 ● JSF 2.0 (JSR-314) → 2009 ● ● ● Corrige gran parte de las carencias de la versión anterior Bookmarkable URL, composite components... JSF 2.2 (JSR-344) → 2013 ● Faces Flows, Stateless views, HTML5 passthrough...
  • 4. JSF – Cómo funciona ● Varias implementaciones: ● Mojarra ● MyFaces ● Basado en componentes (UI) ● La vista se genera y procesa en servidor ● ● Gran parte de las tareas están automatizadas (formulario, validación, recursos y dependencia) CDI (JSR-299) ● ● ● Context and Dependency Injection @Inject private SessionBean sessionBean Fases de una petición JSF
  • 5. JSF – Cómo funciona - Fases
  • 6. JSF - Ventajas ● Estándar ● Basado en componentes: ● ● Reutilización (loose coupling) ● Cohexistencia de distintos proveedores (< vendor lock-in) ● ● Separación de tareas UI ↔ backend (vs JSP y scriptlets) UI personalizado por cada dispositivo La vista se genera en el servidor: ● ● Seguridad (form spoofing) Tareas automatizadas, CDI: ● Productividad
  • 8. Liferay Faces - Historia ● ● ● Comenzado como proyecto Portletfaces (Mimacom y Triton) 2012: se contribuye el proyecto a Liferay → Liferay Faces (Neil Griffin). Agosto 2012: ● ● ● 2.x (JSF 1.2) 3.x (JSF 2.1). Actualidad: ● 2.1.4 ● 3.1.4 ● 4.x → Compatibilidad con JSF 2.2
  • 9. Liferay Faces - Características ● Puente (Bridge) entre ciclo de vida Portlet y JSF. ● Soporte CDI ● Componentes: ● Liferay (<liferay-ui:captcha/>..) ● AUI ● Más componentes próximamente ● JSF + Liferay: permisos, service builder... ● Utilidades disponibles: ● LiferayFacesContext.getInstance().getThemeDisplay() ● #{liferayFacesContext.themeDisplay}
  • 10. Liferay Faces – Demo ● Crear a partir de arquetipo maven: ● ● liferay-portlet-primefaces-archetype ● liferay-portlet-icefaces-archetype ● liferay-portlet-richfaces-archetype ● ● liferay-portlet-jsf-archetype liferay-portlet-liferay-faces-alloy-archetype Crear a partir de Liferay IDE ● Soporte Apache Ivy (dependencias)
  • 11. Liferay Faces - Demo ● Atención a: ● Look & Feel ● XHTML vs JSP y Scriptlets ● ● Unión entre vista y backend mediante Expression Language Facilidad para añadir componentes/funcionalidades (AJAX) ● Ausencia de javascript/css ● “Separation of concerns” (SoC)
  • 12. Liferay Faces – Demo → → ¿Javascript y CSS?