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.

UtilizandoJSF_no_Desenvolvimento_de_aplicacoes_web_by_Thales_Batista_de_Melo

2,049 views

Published on

Palestra sobre JSF na semana de TI da fic 2008.1

Published in: Technology, Education
  • Be the first to comment

UtilizandoJSF_no_Desenvolvimento_de_aplicacoes_web_by_Thales_Batista_de_Melo

  1. 1. Utilizando JSF no desenvolvimento de aplicações Web Palestrante: Thales Melo PDF by http://www.k2pdf.com
  2. 2. Roteiro O que é JSF? O mercado Introdução A Estrutura do JSF Ciclo de Vida
  3. 3. Roteiro Conversores e validadores Conjuntos de componentes disponíveis Faceless O futuro próximo, JSF 2.0 Referências
  4. 4. O que é JSF? É um avião de decolagem vertical de 38 milhões de dólares???
  5. 5. O que é JSF? É um Framework MVC?
  6. 6. O que é JSF? É um conjunto de componentes de UI?
  7. 7. O que é JSF? É um algo que posso usar para renderizar documentos em vários formatos? É uma especificação? JSF...
  8. 8. O mercado 03/03/2008 NetCarreiras (15/02 ) Analista Desenvolvedor Analista Desenvolvedor Requisitos: Graduação completa Struts 4 anos de experiência Modelagem de Dados R$ 6501 a R$ 7000 UML Desejável: PL-SQL, JSF Requisitos: Jornada: 44 horas semanais Servlets e JSPs Remuneração: R$3.000,00 (CLT) SQL Design Patterns JSF Spring Pesquisa no dia 27/05 Hibernate Modelagem ORM Banco de dados: Oracle http://manager.com.br 19 vagas http://netcarreiras.com 41 vagas http://emprego.trovit.pt 23 vagas
  9. 9. Introdução É o framework padrão de Java para web Criado pelo mesmo criador do Struts Framework dirigido a eventos Arquitetura baseada em componentes reutilizáveis Parte visual composta por TagsLibs e Classes Java
  10. 10. Introdução Navegação flexível Escolha dentre várias implementações Conversões e validações de forma fácil e integrada Vários conjuntos de componentes visuais gratuitos e proprietários Suporte a vários render kits
  11. 11. Introdução É suportado por várias IDEs ( Netbeans, Eclipse, JDeveloper )
  12. 12. Introdução
  13. 13. Introdução
  14. 14. A Estrutura do JSF Páginas jsp ou xhtml Managed Beans Arquivos de configuração • web.xml • faces-config.xml ● Bibliotecas necessárias
  15. 15. A Estrutura do JSF Páginas Jsp Tags de utilização do JSF <%@ taglib uri=quot;http://java.sun.com/jsf/htmlquot; prefix=quot;hquot;%> <%@ taglib uri=quot;http://java.sun.com/jsf/corequot; prefix=quot;fquot;%>
  16. 16. A Estrutura do JSF Managed Beans
  17. 17. A Estrutura do JSF Arquivo de configuração ( faces-config.xml )
  18. 18. A Estrutura do JSF Arquivo de configuração ( web.xml )
  19. 19. A Estrutura do JSF Como colar tudo e fazer isto ter algum sentido??
  20. 20. A Estrutura do JSF Projeto web com JSF Projeto web clássico
  21. 21. A Estrutura do JSF Bibliotecas necessárias • jsf-api.jar • jsf-impl.jar • commons-beanutils.jar • commons-collections.jar • commons-digester.jar • commons-logging.jar • jstl.jar • standard.jar
  22. 22. Ciclo de vida
  23. 23. Conversores e validadores Conversores padrão • javax.faces.convert.BigDecimalConverter • javax.faces.convert.BigIntegerConverter <h:inputText id=quot;agequot; value=quot;#{UserRegistration.usuario.salario}quot;> <f:convertNumber maxFractionDigits=quot;2“ maxIntegerDigits=quot;7“ type=“currency”/> </h:inputText> • javax.faces.convert.DateTimeConverter <h:inputText id=quot;agequot; value=quot;#{UserRegistration.usuario.dataDeNascimento}quot;> <f:convertDateTime pattern=quot;MM/yyyyquot;/> </h:inputText> • javax.faces.convert.CharacterConverter • javax.faces.short <h:inputText id=quot;agequot; value=quot;#{UserRegistration.user.age}quot;> <f:converter id=quot;javax.faces.Shortquot;/> </h:inputText>
  24. 24. Conversores e validadores Conversores customizados Extender a interface Converter Implementar os métodos getAsObject(...) getAsString(...) Registrar o converter no faces-config.xml <converter> <converter-id>MyConverter</converter-id> <converter-class>com.mycompany.project.web.MyConverter</converter-class> </converter>
  25. 25. Conversores e validadores Validadores padrão • f:validateDoubleRange • f:validateLongRange • f:validateLength Validadores padrão Fácil implementação Pequeno número validadores padrão disponíveis
  26. 26. Conversores e validadores Validadores Customizados Deve-se implementar a interface Validator Deve-se implementar o método validate() Registrar o validador no faces config <webapp> <validator> <validator-id>PhoneNumberValidator</validator-id> <validator-class>myvalidators.PhoneNumberValidator</validator-class> </validator> </web-app> Utilização <h:inputText value = quot;#{UserBean.phoneNumber}quot; id = quot;phoneNumberTFquot; required=quot;truequot;> <f:validator validatorId = quot;PhoneNumberValidatorquot;/> </h:inputText>
  27. 27. Conjuntos de componentes disponíveis ADF Faces ADF Faces Rich Client Backbase Enterprise Ajax — JSF Edition ICEfaces, open-source, Java JSF extension framework and rich ICEfaces components, Ajax without JavaScript jBoss RichFaces and Ajax4JSF, Ajax-enabled JSF Components Ajax4JSF MyFaces, JSF Implementation with Ajax Components MyFaces Sun Java BluePrints AJAX Components MB Technologies BindowsFaces ZK Ajax framework with JSF components J4Fry Ajax JSF Solution
  28. 28. Conjuntos de componentes disponíveis Bindows Faces
  29. 29. Conjuntos de componentes disponíveis Ice Faces
  30. 30. Conjuntos de componentes disponíveis ADF Faces Rich faces
  31. 31. Faceless Utilizado para construir layouts complexos compostos por várias páginas Será padrão na implementação do JSF 2.0 Utiliza arquivos xhtml ao invés de jsp Dispensa a utilização de jsps Mais rápido que jsp+jsf Foi desenvolvido para trabalhar integrado ao JSF
  32. 32. O futuro próximo, JSF 2.0 Previsto para sair juntamente com javaEE6.0 Acabar com os arquivos xml e utilizar anotações Permitir maior facilidade na criação de componentes customizados. Melhor integração com ajax, permitindo assim validação integrada dos lados cliente e servidor
  33. 33. Referências Sun Official JavaServer Faces Page http://java.sun.com/j2ee/javaserverfaces Java Community Process JavaServer Faces Page http://www.jcp.org/en/jsr/detail?id=127 Java BluePrints AJAX Components https://blueprints.dev.java.net/ajaxcomponents.html MyFaces - Tomahawk http://myfaces.apache.org/tomahawk/ http://myfaces.apache.org/sandbox/ MyFaces - Oracle ADF http://www.oracle.com/technology/products/adf/learnadf.html Demo RICH FACES http://livedemo.exadel.com/richfaces-demo/index.jsp Demo ICEFACES http://component-showcase.icefaces.org/component-showcase/showcase.iface
  34. 34. Dúvidas e Perguntas www.thalesmelo.com/blogger thales.batista@tener.com.br

×