Professional Documents
Culture Documents
Nuestra mejor referencia son los conocimientos que compartimos en nuestro web
www.adictosaltrabajo.com
Decenas de entidades cuentan ya con nosotros
Para ms informacin vistenos en www.autentia.com
Tel. 91 675 33 06 - info@autentia.com
Ms
Consultor tecnolgico de desarrollo de proyectos informticos. Ingeniero Tcnico en Informtica por la Universidad Politcnica de Madrid. Puedes encontrarme en Autentia Somos Java/J2EE expertos en
Registra tu empresa:
Descargar este documento en formato PDF: introduccionPrimefaces.pdf Descubre las ventajas de registrar tu empresa en AdictosAlTrabajo... Registrar mi empresa Listado de empresas ya registradas
Share |
Introduccin a Primefaces
ndice de contenidos
1. 2. 3. 4. 5. 6. Introduccin Aadiendo el soporte para Primefaces Creando una pgina de prueba Aadir el soporte de un ManagedBean Comparativa con otras libreras Conclusiones
Web
www.adictosaltrabajo.c
1. Introduccin
PrimeFaces es una librera de componentes visuales open source desarrollada y mantenida por Prime Technology, una compaa Turca de IT especializada en consultora gil, JSF, Java EE y Outsourcing. El proyecto es liderado por aatay ivici, un miembro del "JSF Expert Group" (y forofo del Bara). Las principales caractersticas de Primefaces son: soporte nativo de Ajax, incluyendo Push/Comet.
2010-06-30
ltimos tutoriales
2010-06-30
Introduccin a Primefaces
kit para crear aplicaciones web para mviles. es compatible con otras libreras de componentes, como JBoss RichFaces. uso de javascript no intrusivo (no aparece en lnea dentro de los elementos, sino dentro de un bloque <script>). es un proyecto open source, activo y bastante estable entre versiones. Algunos inconvenientes podran ser: para utilizar el soporte de Ajax tenemos que indicarlo explcitamente, por medio de atributos especficos de cada componente. no podemos utilizar el soporte de Ajax de JSF 2 (mediante <f:ajax>) con los componentes de Primefaces. Este tutorial no pretende hacer un anlisis exahustivo de todos los componentes de Primefaces (ms de 90 en el momento de escribir este tutorial), sino servir de introduccin y mostrar lo necesario para poder utilizar la librera en nuestras aplicaciones web. Este tutorial se apoya en el de mi compaero Jose de introduccin a RichFaces, y la similitud de los ejemplos se ha hecho a propsito, para que resulte ms sencillo comparar la utilizacin de ambas libreras.
2010-06-29
2010-06-29
2010-06-28
2010-06-21
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 2010-06-17 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> IAQ (Interesting Asked <modelVersion>4.0.0</modelVersion> Questions), SPI qu es, <groupId>com.autentia.tutorial</groupId> hay que usarlo, o no, <artifactId>primefacesAppDemo</artifactId> cundo? <packaging>war</packaging> <version>1.0-SNAPSHOT</version> <name>primefacesAppDemo Maven Webapp</name>
2010-06-14
<build> <finalName>primefacesAppDemo</finalName> <plugins> <plugin> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.5</source> <target>1.5</target> </configuration> </plugin> </plugins> </build> <repositories> <!-- Repositorio de Maven de JBoss --> <repository> <id>maven2-repository.jboss.com</id> <name>Jboss Repository for Maven</name> <url>http://repository.jboss.com/maven2</url> </repository> <!-- Repositorio con el API y la implementacin de JSF 2 --> <repository> <id>maven2-repository.dev.java.net</id> <name>Java.net Repository for Maven</name> <url>http://download.java.net/maven/2</url> </repository> <!-- Repositorio de Primefaces --> <repository> <id>prime-repo</id> <name>Prime Technology Maven Repository</name> <url>http://repository.prime.com.tr/</url> <layout>default</layout> </repository> </repositories> <dependencies> <!-- API e implementacin de JSF 2. Del repo dev.java.net --> <dependency> <groupId>com.sun.faces</groupId> <artifactId>jsf-api</artifactId> <version>2.0.2-b10</version> </dependency> <dependency> <groupId>com.sun.faces</groupId> <artifactId>jsf-impl</artifactId> <version>2.0.2-b10</version> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> <version>1.2</version>
2010-06-14
2009-02-26
2010-06-14
2010-06-11
2010-06-11
2010-06-11
2010-06-10
2010-06-07
Introduccin a BPMN
2010-06-07
</dependency> <!-- Libreras de Primefaces --> <dependency> <groupId>org.primefaces</groupId> <artifactId>primefaces</artifactId> <version>2.0.2</version> </dependency> </dependencies> </project>
Descriptor de despliegue de la aplicacin web:
2010-05-31
2010-05-27
2010-05-26
Generar facturas <?xml version="1.0" encoding="UTF-8"?> electrnicas de manera <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" gratuita xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd id="WebApp_ID" version="2.5">
<display-name>Introduccin a Primefaces</display-name>
2010-05-25
<!-- Configuracin de JSF --> <context-param> <description> 2010-05-24 Define the value returned by Application.getProjectStage(). Allowed values: Production, Botones para aadir UnitTest, SystemTest, Extension. Default value is Production. eventos directamente a </description> calendario (Google <param-name>javax.faces.PROJECT_STAGE</param-name> Calendar y Outlook) <param-value>Development</param-value> </context-param> <context-param> <description>Do not render comments in facelets (xhtml) pages. Default is2010-05-24 false.</description> <param-name>javax.faces.FACELETS_SKIP_COMMENTS</param-name> Procesar un fichero EDI <param-value>true</param-value> con Talend </context-param> <context-param> <param-name>javax.faces.CONFIG_FILES</param-name> 2010-05-17 <param-value>/WEB-INF/faces-config.xml</param-value> Aadir botones para </context-param> <servlet> <servlet-name>Faces Servlet</servlet-name> <servlet-class>javax.faces.webapp.FacesServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>Faces Servlet</servlet-name> <url-pattern>*.xhtml</url-pattern> </servlet-mapping> <!-- Servlet de recursos de Primefaces --> <servlet> <servlet-name>Resource Servlet</servlet-name> <servlet-class>org.primefaces.resource.ResourceServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>Resource Servlet</servlet-name> <url-pattern>/primefaces_resource/*</url-pattern> </servlet-mapping> <welcome-file-list> <welcome-file>index.xhtml</welcome-file> </welcome-file-list> </web-app>
Por ltimo, y lo mejor, el fichero de configuracin de JSF. Con el uso de anotaciones en nuestros bean manejados y el soporte nativo de Facelets, este fichero puede ser tan simple como esto:
2010-05-11
2010-05-17
2010-05-17
2010-05-11
2010-05-11
<?xml version='1.0' encoding='UTF-8'?> Mltiples datasources en <faces-config xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" JasperReports xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig version="2.0"> </faces-config>
2010-05-10
2010-05-07
Instalar un componente <?xml version="1.0" encoding="UTF-8"?> en Talend Open Studio <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transiti (TOS)
2010-05-06
(TOS) 4.0
<html> <h:head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>Prueba con Primefaces</title> </h:head> <h:body> <h:form> <p:panel header="Prueba con Primefaces"> <h:panelGrid columns="2"> <h:outputLabel value="Fecha" /> <p:calendar pattern="dd/MM/yyyy" /> </h:panelGrid> </p:panel> </h:form> </h:body> </html> </f:view>
Hemos especificado el espacio de nombres "xmlns:p" para poder utilizar la librera de componentes de Primefaces y, como no, hemos aadido un componente calendario dentro de un panel, aunque podramos haber elegido cualquiera de los que hay en la librera de componentes de Primefaces. Si abrimos la pgina con un navegador, veremos el resultado:
2010-04-26 2010-05-05 2010-05-05
2010-05-04
2010-05-04
2010-04-23
2010-04-22
2010-04-20
2010-04-19
2010-04-09
2010-04-08
package com.autentia.tutorial.view; import import import import import import import import java.io.Serializable; java.text.DateFormat; java.text.SimpleDateFormat; java.util.Date; javax.faces.application.FacesMessage; javax.faces.bean.ManagedBean; javax.faces.bean.ViewScoped; javax.faces.context.FacesContext;
2010-04-07
2010-03-18
import org.primefaces.event.DateSelectEvent; @ManagedBean @ViewScoped public class PruebaView implements Serializable { private static final long serialVersionUID = 8995118759276351827L; private Date date;
2010-03-16
2010-03-15
FacesContext.getCurrentInstance().addMessage(null, 2010-03-15 new FacesMessage("Fecha seleccionada: " + formatter.format(event.getDate()))); } public Date getDate() { return date; } public void setDate(Date date) { this.date = date; } }
Debemos modificar el cdigo de nuestra vista para enlazar el valor de la fecha del calendario con la variable "date" del controlador. Adems habr que llamar al mtodo "cambioFecha" cuando cambie la seleccin y aadir el componente que mostrar los mensajes. Se ha utilizado el componente "growl" de Primefaces, que mostrar los mensajes dentro de unos "pop-ups" que desaparecern transcurridos unos segundos.
2010-03-08
2010-03-09
JSF 2 ya est aqu !!! The JSF Return, ahora ms sencillo que nunca !!!
<h:form> <p:growl id="growl" /> <p:panel header="Prueba con Primefaces"> <h:panelGrid columns="2"> <h:outputLabel value="#{pruebaView.date}" /> <p:calendar pattern="dd/MM/yyyy" selectListener="#{pruebaView.cambioFecha}" onSelectUpdate="growl" /> </h:panelGrid> </p:panel> </h:form>
Ahora, cuando cambiemos la fecha del calendario, veremos que aparece el siguiente mensaje:
2010-04-25
2010-04-25
2010-04-21
2009-06-25
Soporte de Ajax
Es transparente para el desarrollador, lo implementa de forma nativa en todos los componentes mediante la propiedad partialSubmit
Usa el soporte de prototypejs, aunque la parte de Ajax la han Usa el soporte de prototypejs y Utiliza el soporte de Libreras en las rescrito y para los efectos script.aculo.us, aunque soporta jQuery y jQuery UI para que se basan visuales utilizan tambin jquery. los efectos visuales. script.aculo.us. Incorpora el concepto de skins Personalizacin Incorpora el concepto de skins y distribuye 12 temas, aunque de la interfaz y distribuye 3 temas. se pueden encontrar ms en el de usuario repositorio de SNAPSHOTS. Tiene 79 componentes en la versin bsica, a los que hay que sumar 32 de la versin empresarial, esta ltima es de pago. La percepcin es que estan inviertiendo esfuerzos en mejorar la versin empresarial y, como es lgico, esperan obtener beneficio econmico por ello. MPL 1.1, que cubre la LGPL V 2.1. Si bien disponen de una versin empresarial con licencia comercial. Tiene 212 componentes entre los propios de RichFaces y los de Ajax4JSF. Con RichFaces todos los componentes son OpenSource y podemos usar un Pick List sin contratar nada, sin embargo, con ICEfaces sin queremos un Dual List o pagamos o lo implementamos nosotros. LGPL V 2.1. en su totalidad. Incorpora el concepto de skins, utilizando ThemeRoller, y dispone de 26 temas prediseados. Tiene ms de 90 componentes OpenSource, algunos muy avanzados como el HTMLEditor. Adems dispone de un kit para crear interfaces web para telfonos mviles.
Nmero de componentes
Licencia
Apache License V2
Caracterstica
ICEfaces
RichFaces
Primefaces Ha sido una de las primeras libreras capaces de integrarse con JSF 2 y viene pisando fuerte debido a la diversidad y calidad de sus componentes. Puede utilizarse junto a Richfaces, pero no es compatible con ICEfaces.
Relevancia
Ha sustituido a Woodstock como librera de componentes de referencia de Sun para el desarrollo de aplicaciones RIA. Se distribuye, por defecto, con NetBeans.
Es la librera de componentes visuales de Jboss, se integra, por defecto con Jboss Seam, aunque ste tambin soporta ICEfaces.
6. Conclusiones
Existen actualmente bastantes libreras de componentes para JSF. El elegir utilizar una u otra depender en gran medida del nmero y la calidad de componentes que nos ofrezca, la estabilidad en los cambios de versin, el disponer de una buena documentacin y la utilizacin e integracin con otros estndares. Se puede decir que Primefaces cumple sobradamente con todas esas caractersticas, por lo que puede ser una buena eleccin. Adems hay que tener en cuenta que no estamos limitados a utilizar una nica librera, aunque en ese caso habra investigar un poco ms para estar seguros de que no se produzcan incompatibilidades entre ellas, que podran darnos muchos quebraderos de cabeza. Desde Autentia siempre procuramos estar al da en este tipo de tecnologas y os animamos a que deis tambin el paso si no lo habis hecho ya. Esperamos que nuestros tutoriales os ayuden un poquito a conseguirlo. Un saludo.
Share |
Autor
Puedes inscribirte en nuestro servicio de notificaciones haciendo clic aqu. Puedes firmar en nuestro libro de visitas haciendo clic aqu. Puedes asociarte al grupo AdictosAlTrabajo en XING haciendo clic aqu. Aadir a favoritos Technorati.
Esta obra est licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5
Recuerda
Autentia te regala la mayora del conocimiento aqu compartido (Ver todos los tutoriales). Somos expertos en: J2EE, Struts, JSF, C++, OOP, UML, UP, Patrones de diseo ... y muchas otras cosas.
Nos vas a tener en cuenta cuando necesites consultora o formacin en tu empresa?, Vas a ser tan generoso con nosotros como lo tratamos de ser con vosotros?
Somos pocos, somos buenos, estamos motivados y nos gusta lo que hacemos ... Autentia = Soporte a Desarrollo & Formacin. info@autentia.com
Tutoriales recomendados
Nombre Resumen Fecha Visitas Valoracin Votos Pdf
Nota:
Los tutoriales mostrados en este Web tienen como objetivo la difusin del conocimiento. Los contenidos y comentarios de los tutoriales son responsabilidad de sus respectivos autores. En algn caso se puede hacer referencia a marcas o nombres cuya propiedad y derechos es de sus respectivos dueos. Si algn afectado desea que incorporemos alguna resea especfica, no tiene ms que solicitarlo. Si alguien encuentra algn problema con la informacin publicada en este Web, rogamos que informe al administrador rcanales@adictosaltrabajo.com para su resolucin.