Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Presentado por                                                      2.0 ICESOFT TECHNOLOGIES INCICESOFT TECHNOLOGIES INC W...
¡Bienvenidos! • Introducciones     Moderador • Audio silenciado                      Jean-François Clercx • Encuesta      ...
Migrando a ICEfaces 2: Agenda• Novedades en JSF 2• Novedades en ICEfaces 2• Demo: Migración de una aplicación existente de...
ICEfaces 2• La nueva generación para desarrollo JSF AJAX• Construido sobre JSF 2• Capa de Compatibilidad   – Permite una a...
Novedades JSF 2JSF 2 aporta muchas mejoras frente a JSF 1.2.• AJAX como parte de la arquitectura estándar    -   Peticione...
Novedades en JSF 2, cont.JSF 2 aporta muchas mejoras frente a JSF 1.2.• HTTP GET soportado en el ciclo de vida JSF• Nuevos...
Novedades en ICEfaces 2ICEfaces 2 amplía y simplifica el desarrollo en JSF• AJAX automático y renderizado Direct-2-DOM• Si...
Novedades en ICEfaces 2, cont.ICEfaces 2 amplía y simplifica el desarrollo en JSF• Configuración simplificada• Componentes...
Demo: Actualización de aplicación existente             Usando la integración de Eclipse IDE                        Screen...
Actualizando de ICEfaces 1.8 a 2.0Paso 1, configuramos las librerías usadas …1. Actualización de JSF jars    •   jsf-impl....
Actualizando de ICEfaces 1.8 a 2.0Paso 2, editamos faces-config.xml…1. Actualizamos la cabecera de faces-config.xml    •  ...
Actualizando de ICEfaces 1.8 a 2.0Paso 2, editamos faces-config.xml…2. Eliminamos la declaración del Controlador de Vista ...
Actualizando de ICEfaces 1.8 a 2.0Paso 2, editamos faces-config.xml…3. Cambiamos los ámbitos de beans:    •   El ámbito re...
Actualizando de ICEfaces 1.8 a 2.0 Paso 3, actualización de web.xml… 1. Eliminamos los Servlets y mapeos de ICEfaces 1.8: ...
Actualizando de ICEfaces 1.8 a 2.0Paso 3, actualización de web.xml…2. También eliminamos el listener ContextEventRepeater ...
Actualizando de ICEfaces 1.8 a 2.0Paso 3, actualización de web.xml…3. Nos aseguramos que disponemos del Faces Servlet y ma...
Actualizando de ICEfaces 1.8 a 2.0 Paso 3, actualización de web.xml… 3. Cambiamos los parámetros de contexto:      Parámet...
Actualizando de ICEfaces 1.8 a 2.0Paso 4, actualizamos index.jspCambiamos la extensión *.iface por *.jsf <jsp:forward page...
Actualizando de ICEfaces 1.8 a 2.0Paso 4, actualizamos los archivos xhtml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE...
Actualizando de ICEfaces 1.8 a 2.0Paso 4, actualizamos los archivos xhtmlReemplazamos la <ice:outputDeclaration> por:<!DOC...
Actualizando de ICEfaces 1.8 a 2.0Paso 5, cambiamos los componentes que se actualizan<ice:inputFile> se cambia por <ace:fi...
Actualizando de ICEfaces 1.8 a 2.0Paso 5, cambiamos los componentes que se actualizanActualizamos el bean FileUploaderpack...
Actualizando de ICEfaces 1.8 a 2.0Paso 6, actualización de APIs de Ajax PushLlamadas de Ajax Push que se actualizanRenderM...
Actualizando de ICEfaces 1.8 a 2.0Paso 6, actualizamos reglas de navegación de JSF 2Las reglas ya no se necesitan en faces...
Actualizando de ICEfaces 1.8 a 2.0Paso 7, cambiamos Partial Submit por Single SubmitPartial Submit todavía funciona pero S...
¡Muchas Gracias!A continuación:   • Breve visión de Mimacom   • Turno de preguntas y respuestas                           ...
mimacom • ¿Qué ofrece mimacom?   – Training, Soporte y servicios para los siguientes     frameworks:   – ICEfaces (iceface...
mimacom              edoras path               Methodology                Tool Chain           Technology / Frameworks    ...
mimacom          Scrum                  www.icefaces.org | www.mimacom.com
mimacom                    Version Control             Build System                                                       ...
ContactoEl enlace a las transparencias y ejemplos expuestos en el   Webinar será suministrado vía:      Blog:         http...
Contacto                           Contact mimacom:                           Contact ICESoft:                           T...
Turno de preguntas •   ¿Preguntas?      – Por favor escriban sus preguntas en la ventana “Question and Answer” en la      ...
Links • Home:    – http://www.icefaces.org • Forums:    – http://www.icefaces.org/JForum/ • ICEpack:    – http://www.icefa...
Upcoming SlideShare
Loading in …5
×

Migrating to ICEfaces 2 (Spanish)

7,159 views

Published on

Transparencias del Taller de migración a ICEfaces 2. Más información: http://blog.mimacomiberica.es/

Published in: Technology
  • Be the first to comment

Migrating to ICEfaces 2 (Spanish)

  1. 1. Presentado por 2.0 ICESOFT TECHNOLOGIES INCICESOFT TECHNOLOGIES INC Wednesday, March 30, 2011 www.icefaces.org www.icefaces.org | www.mimacom.comSlide: 0
  2. 2. ¡Bienvenidos! • Introducciones Moderador • Audio silenciado Jean-François Clercx • Encuesta CEO Mimacom Ibérica Presentador José Antonio Álvarez Software Engineer Mimacom www.icefaces.org | www.mimacom.com
  3. 3. Migrando a ICEfaces 2: Agenda• Novedades en JSF 2• Novedades en ICEfaces 2• Demo: Migración de una aplicación existente de ICEfaces 1.8 a 2.0• Turno de preguntas y respuestas www.icefaces.org | www.mimacom.com
  4. 4. ICEfaces 2• La nueva generación para desarrollo JSF AJAX• Construido sobre JSF 2• Capa de Compatibilidad – Permite una adaptación sencilla desde ICEfaces 1.8 y JSF 1.2 – Ofrece los componentes de ICEfaces 1.8 para su uso en JSF 2• Nuevos componentes• Configuración más sencilla• Mejor compatibilidad• Muchas nuevas características sobre JSF 2 www.icefaces.org | www.mimacom.com
  5. 5. Novedades JSF 2JSF 2 aporta muchas mejoras frente a JSF 1.2.• AJAX como parte de la arquitectura estándar - Peticiones Ajax y actualizaciones parciales se integran en el ciclo de vida JSF• Parte de JEE6• Facelets se presenta como el estándar• Desarrollo de componentes más fácil y sencillo con Facelets• El tráfico se reduce mediante el guardado parcial de estado• Soporte más amplio para eventos del sistema www.icefaces.org | www.mimacom.com
  6. 6. Novedades en JSF 2, cont.JSF 2 aporta muchas mejoras frente a JSF 1.2.• HTTP GET soportado en el ciclo de vida JSF• Nuevos ámbitos para beans, y soporte para ámbitos custom• Anotaciones• Carga de recursos estandarizada• Mejora de manejo de excepciones• Navegación mejorada• Y más … www.icefaces.org | www.mimacom.com
  7. 7. Novedades en ICEfaces 2ICEfaces 2 amplía y simplifica el desarrollo en JSF• AJAX automático y renderizado Direct-2-DOM• Single Submit - Ciclo de vida se ejecuta en un único componente 2.0• AJAX Push• Bean Management - Se ofrecen anotaciones que ajustan el comportamiento de beans de ámbito View• Registro del uso de recursos• Desarrollo de Portlets con PortletFaces Bridge• APIs de cliente - Monitorización de Eventos, envío de formularios, callbacks de eventos y monitorización de conexión AJAX Push www.icefaces.org | www.mimacom.com
  8. 8. Novedades en ICEfaces 2, cont.ICEfaces 2 amplía y simplifica el desarrollo en JSF• Configuración simplificada• Componentes ricos - ICEfaces Components 2.0 - ICEfaces Advanced Components - ICEfaces Enterprise Components• Capa de Compatibilidad 1.8 - Actualiza rápidamente tu aplicación ICEfaces 1.8 a 2.0 con cambios menores• Nuevo Ámbito Window• Mejora de clustering y tolerancia a fallos www.icefaces.org | www.mimacom.com
  9. 9. Demo: Actualización de aplicación existente Usando la integración de Eclipse IDE Screen shot 2.0 www.icefaces.org | www.mimacom.com
  10. 10. Actualizando de ICEfaces 1.8 a 2.0Paso 1, configuramos las librerías usadas …1. Actualización de JSF jars • jsf-impl.jar: 1.2 – 2.0 (ICEfaces 2.0 viene con Mojarra 2.0.3 FCS) • jsf-api.jar2. Actualización de ICEfaces jars • icefaces.jar: 1.8 – 2.0 • icefaces-comps.jar -> icefaces-ace.jar, icefaces-compat.jar • nueva librería independiente para AJAX Push: icepush.jar3. Jars que ya no se necesitan • backport-util-concurrent.jar • commons-beanutils.jar • commons-digester.jar • commons-el.jar • commons-fileupload.jar • icefaces-facelets.jar www.icefaces.org | www.mimacom.com
  11. 11. Actualizando de ICEfaces 1.8 a 2.0Paso 2, editamos faces-config.xml…1. Actualizamos la cabecera de faces-config.xml • Antigua: <faces-config xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_1_2.xsd" version="1.2"> • Nueva: <faces-config xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd" version="2.0"> www.icefaces.org | www.mimacom.com
  12. 12. Actualizando de ICEfaces 1.8 a 2.0Paso 2, editamos faces-config.xml…2. Eliminamos la declaración del Controlador de Vista • Declaración antigua: … <view-handler> com.icesoft.faces.facelets.D2DFaceletViewHandler </view-handler> … www.icefaces.org | www.mimacom.com
  13. 13. Actualizando de ICEfaces 1.8 a 2.0Paso 2, editamos faces-config.xml…3. Cambiamos los ámbitos de beans: • El ámbito request ICEfaces se cambia por el nuevo ámbito View • Ámbito antiguo: ... <managed-bean-scope>request</managed-bean-scope> ... • Nuevo ámbito: ... <managed-bean-scope>view</managed-bean-scope> ... www.icefaces.org | www.mimacom.com
  14. 14. Actualizando de ICEfaces 1.8 a 2.0 Paso 3, actualización de web.xml… 1. Eliminamos los Servlets y mapeos de ICEfaces 1.8: • ICEfaces 2 se basa ahora en servlets estándar de JSF • Servlets y mapeos antiguos:<servlet> <servlet-name>Persistent Faces Servlet</servlet-name> <servlet-class>com.icesoft.faces.webapp.xmlhttp.PersistentFacesServlet</servlet-class></servlet><servlet-mapping> <servlet-name>Persistent Faces Servlet</servlet-name> …</servlet-mapping><servlet> <servlet-name>Blocking Servlet</servlet-name> <servlet-class>com.icesoft.faces.webapp.xmlhttp.BlockingServlet</servlet-class></servlet><servlet-mapping> <servlet-name>Blocking Servlet</servlet-name> <url-pattern>/block/*</url-pattern></servlet-mapping> www.icefaces.org | www.mimacom.com
  15. 15. Actualizando de ICEfaces 1.8 a 2.0Paso 3, actualización de web.xml…2. También eliminamos el listener ContextEventRepeater <listener> <listener-class>com.icesoft.faces.util.event.servlet.ContextEventRepeater</listener-class> </listener>3. Añadimos el servlet ICEfaces Compat Resources: • Nuevo servlet y mapeo: <servlet> <servlet-name>Resource Servlet</servlet-name> <servlet-class>com.icesoft.faces.webapp.CompatResourceServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>Resource Servlet</servlet-name> <url-pattern>/xmlhttp/*</url-pattern> </servlet-mapping> www.icefaces.org | www.mimacom.com
  16. 16. Actualizando de ICEfaces 1.8 a 2.0Paso 3, actualización de web.xml…3. Nos aseguramos que disponemos del Faces Servlet y mapeos: • Servlet y mapeos: <servlet> <servlet-name>Faces Servlet</servlet-name> <servlet-class>javax.faces.webapp.FacesServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>Faces Servlet</servlet-name> <url-pattern>*.jsf</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>Faces Servlet</servlet-name> <url-pattern>/icefaces/*</url-pattern> </servlet-mapping> www.icefaces.org | www.mimacom.com
  17. 17. Actualizando de ICEfaces 1.8 a 2.0 Paso 3, actualización de web.xml… 3. Cambiamos los parámetros de contexto: Parámetros antiguos Nuevos parámetros Valores Por defecto Antiguo por defectofacelets.LIBRARIES javax.faces.FACELETS_LIBRARIESn/a javax.faces.VALIDATE_EMPTY_FIELDS true/falsejavax.faces.STATE_SAVING_METHOD Sin cambios server/clientjavax.faces.CONFIG_FILES Sin cambiosjavax.faces.DEFAULT_SUFFIX Sin cambios *.jsp -> *.xhtml www.icefaces.org | www.mimacom.com
  18. 18. Actualizando de ICEfaces 1.8 a 2.0Paso 4, actualizamos index.jspCambiamos la extensión *.iface por *.jsf <jsp:forward page="applicantForm.jsf" /> www.icefaces.org | www.mimacom.com
  19. 19. Actualizando de ICEfaces 1.8 a 2.0Paso 4, actualizamos los archivos xhtml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xmlns:h="http://java.sun.com/jsf/html" xmlns:f="http://java.sun.com/jsf/core" xmlns:icecore="http://www.icefaces.org/icefaces/core" xmlns:ace="http://www.icefaces.org/icefaces/components" xmlns:ice="http://www.icesoft.com/icefaces/component"> <h:head> <title>Job Application</title> <ice:outputStyle href="./xmlhttp/css/xp/xp.css" /> </h:head> <h:body> … </h:body> </html> www.icefaces.org | www.mimacom.com
  20. 20. Actualizando de ICEfaces 1.8 a 2.0Paso 4, actualizamos los archivos xhtmlReemplazamos la <ice:outputDeclaration> por:<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> www.icefaces.org | www.mimacom.com
  21. 21. Actualizando de ICEfaces 1.8 a 2.0Paso 5, cambiamos los componentes que se actualizan<ice:inputFile> se cambia por <ace:fileEntry><ace:fileEntry id="resume" label="File Upload" relativePath="uploaded" fileEntryListener="#{resumeUploader.actionListener}"/><h:commandButton id="fileUploadButton" value="Upload"/><tr><td><ice:outputProgress value="#{resumeUploader.fileProgress}"labelComplete="#{resumeUploader.currentFile.fileName}" /></td></tr>Eliminamos el servlet de subida de ficheros antiguo<servlet> <servlet-name>uploadServlet</servlet-name> <servlet-class>com.icesoft.faces.component.inputfile.FileUploadServlet</servlet-class> <load-on-startup>1</load-on-startup></servlet><servlet-mapping> <servlet-name>uploadServlet</servlet-name> <url-pattern>/uploadHtml</url-pattern></servlet-mapping> www.icefaces.org | www.mimacom.com
  22. 22. Actualizando de ICEfaces 1.8 a 2.0Paso 5, cambiamos los componentes que se actualizanActualizamos el bean FileUploaderpackage training.jobapplication.bean.util;import org.icefaces.component.fileentry.FileEntry;import org.icefaces.component.fileentry.FileEntryEvent;import org.icefaces.component.fileentry.FileEntryResults;public class FileUploader {private FileEntryResults.FileInfo currentFile;public FileEntryResults.FileInfo getCurrentFile() {return currentFile;}public void actionListener(FileEntryEvent event) {FileEntry fileEntry = (FileEntry) event.getSource(); FileEntryResults results = fileEntry.getResults(); for (FileEntryResults.FileInfo fileInfo : results.getFiles()) { if (fileInfo.isSaved()) { currentFile = fileInfo; } }}} www.icefaces.org | www.mimacom.com
  23. 23. Actualizando de ICEfaces 1.8 a 2.0Paso 6, actualización de APIs de Ajax PushLlamadas de Ajax Push que se actualizanRenderManagerOnDemandRendererIntervalRendererDelayedRendererPushRenderer.addCurrentView();PushRenderer.addCurrentSession();PushRenderer.render(String); www.icefaces.org | www.mimacom.com
  24. 24. Actualizando de ICEfaces 1.8 a 2.0Paso 6, actualizamos reglas de navegación de JSF 2Las reglas ya no se necesitan en faces-config.xml<navigation-rule> <from-view-id>/applicantForm.xhtml</from-view-id> <navigation-case> <from-outcome>success</from-outcome> <to-view-id>/thankYou.iface</to-view-id> </navigation-case> <navigation-case> <from-outcome>failure</from-outcome> <to-view-id>/noThanks.iface</to-view-id> </navigation-case></navigation-rule>public String submit() { return "thankYou?faces-redirect=true";}Actualizamos las navegaciones en las páginas .xhtml. www.icefaces.org | www.mimacom.com
  25. 25. Actualizando de ICEfaces 1.8 a 2.0Paso 7, cambiamos Partial Submit por Single SubmitPartial Submit todavía funciona pero Single Submit es más eficiente<h:form id="applicantForm"> <icecore:singleSubmit/> www.icefaces.org | www.mimacom.com
  26. 26. ¡Muchas Gracias!A continuación: • Breve visión de Mimacom • Turno de preguntas y respuestas www.icefaces.org | www.mimacom.com
  27. 27. mimacom • ¿Qué ofrece mimacom? – Training, Soporte y servicios para los siguientes frameworks: – ICEfaces (icefaces.org) – PortletFaces (portletfaces.org) – Liferay (liferay.com) – edoras-framework (edorasframework.org) – Spring-Framework (springframework.org) www.icefaces.org | www.mimacom.com
  28. 28. mimacom edoras path Methodology Tool Chain Technology / Frameworks Complete Application Lifecyle Management (ALM) Know-How transfer www.icefaces.org | www.mimacom.com
  29. 29. mimacom Scrum www.icefaces.org | www.mimacom.com
  30. 30. mimacom Version Control Build System Knowledge-Mngmt Subversion Maven 2 Code Reviews Confluence Crucible Continuous Development Integration Eclipse (IDE) Bamboo Issue – Tracker (Requirements, Bugs, Changes, etc.) JIRA Toolchain www.icefaces.org | www.mimacom.com
  31. 31. ContactoEl enlace a las transparencias y ejemplos expuestos en el Webinar será suministrado vía: Blog: http://blog.mimacomiberica.es Twitter: @icefaces_espana Facebook: Mimacom Ibérica ICEfaces Hispano Email: jose.antonio.alvarez@mimacom.com jfclercx@mimacom.com www.icefaces.org | www.mimacom.com
  32. 32. Contacto Contact mimacom: Contact ICESoft: Tel: +34 963524125 Toll Free: +1 877 263 3822 USA info@mimacomiberica.es International: +1 403 663 3322 Skype: jfclercx product.support@icesoft.comICESOFT TECHNOLOGIES INC www.icefaces.org | www.mimacom.com Slide: 31
  33. 33. Turno de preguntas • ¿Preguntas? – Por favor escriban sus preguntas en la ventana “Question and Answer” en la parte inferior derecha de su pantalla – Las respuestas a las preguntas que no puedan tratarse en esta sesión serán enviadas por correo electrónico www.icefaces.org | www.mimacom.com
  34. 34. Links • Home: – http://www.icefaces.org • Forums: – http://www.icefaces.org/JForum/ • ICEpack: – http://www.icefaces.org/main/ajax-java/icepack.iface • Tutorials: – http://www.icefaces.org/main/resources/tutorials.iface • Documentation: – http://www.icefaces.org/main/resources/documentation.iface www.icefaces.org | www.mimacom.com

×