Início   Apresen...   Servlets         JSP           JSF         Demons...   Conclusão    Referên...




         {
                                                                                         Utilize as abas e botões de
                                                                                           navegação ou teclado




                            Ciência da Computação – 7NA
                            Sistema de Informação para Web
                             Alunos:
                             Carlos Henrique          [ chenriquesp@gmail.com ]
                             Davi Hirafuji            [ superultradavi@gmail.com ]
                             Diego Castelo Branco     [ dcastelob@gmail.com ]
                             Vitor Costa              [ vcostaa@gmail.com ]




                                       Sistema de Informação para Web
Início     Apresen...   Servlets   JSP           JSF         Demons...   Conclusão   Referên...




   Apresentação


         Abordagem da tecnologia de Servlets.

         Introdução sobre Java Server Pages – JSP.

         Introdução ao Java Server Faces – JSF.

         Demonstração das tecnologias.




                                   Sistema de Informação para Web
Início   Apresen...   Servlets   JSP           JSF         Demons...   Conclusão   Referên...




                                 SERVLETS




                                 Sistema de Informação para Web
Início     Apresen...   Servlets   JSP           JSF         Demons...   Conclusão   Referên...




   O que são Servlets?                                                                            [1/3]


         Classes Java Instanciadas e executadas em associação com
         Servidores Web.
         API de construção de componentes.
            Lado Servidor
            Garantir padrão de comunicação (cliente servidor)

         Não possuem Interface gráfica.
         São executados em ambiente Java denominado “Container”.
         Geração de código HTML.

                                   Sistema de Informação para Web
Início     Apresen...   Servlets   JSP           JSF         Demons...   Conclusão   Referên...




   O que são Servlets?                                                                            [2/3]


         Container – Java Virtual Machine




                                   Sistema de Informação para Web
Início     Apresen...   Servlets   JSP           JSF         Demons...   Conclusão   Referên...




   Servlets                                                                                       [3/3]


         Dificuldades de realização de manutenção.

         Dificuldades na divisão de trabalho.

         Velocidade no desenvolvimento.




                                   Sistema de Informação para Web
Início   Apresen...   Servlets   JSP           JSF         Demons...   Conclusão   Referên...




              JAVA SERVER PAGES - JSP




                                 Sistema de Informação para Web
Início     Apresen...   Servlets   JSP           JSF         Demons...   Conclusão   Referên...




   Java Server Pages - JSP                                                                        [1/5]


         Desenvolvido pela SUN MicroSystems.
         Similar ao ASP e ao PHP.
         O Conteúdo resulta em páginas HTML que incluem com
         código Java e outras tags...
            Parte estática – HTML
            Parte dinâmica – JSP

         Compilação do Servlet no primeiro carregamento da
         página JSP  Gera HTML  Envia para o Navegador.

                                   Sistema de Informação para Web
Início     Apresen...   Servlets   JSP           JSF         Demons...   Conclusão   Referên...




   Java Server Pages - JSP                                                                        [2/5]


         Valores de Escopo
           Request:
                  O Java bean existe somente para a requisição corrente.
           Session:
                  O Java bean pertence à sessão criada para o usuário.
           Page:
                  O Java bean é compartilhado por todas as execuções da página.
           Application:
                  O Java bean é compartilhado por toda a aplicação (todas as
                  páginas, todas as sessões, ...).


                                   Sistema de Informação para Web
Início     Apresen...   Servlets   JSP           JSF         Demons...   Conclusão   Referên...




   Java Server Pages - JSP                                                                        [3/5]


         Objetos Instanciados (9)
           request - javax.servlet.ServletRequest
           response - javax.servlet.ServletResponse
           pageContext - javax.servlet.jsp.PageContext
           session - javax.servlet.http.HttpSession
           application - javax.servlet.ServletContext
           out - javax.servlet.jsp.JspWriter
           config - javax.servlet.ServletConfig
           page - java.lang.Object
           exception - java.lang.Throwable

                                   Sistema de Informação para Web
Início     Apresen...   Servlets    JSP           JSF         Demons...   Conclusão   Referên...




   Java Server Pages - JSP                                                                         [4/5]

         Como declarar?
           Declaração de Sintaxe:
                  <% %> - O código java será executado no servidor.
                  <% for(int i=0; i < 2000; i++){ out.println(“FG”); } %>

           Declaração de Expressão:
                  <%= %> - Resultado retorna como string.
                  <%= 1+1%> Resulta: 2 como string

           Diretivas
                  <%@page import=“java.util.List” %> - importa pacotes de classes
                  <%@page language=“java” %> - informa a linguagem utilizada



                                    Sistema de Informação para Web
Início     Apresen...   Servlets   JSP           JSF         Demons...   Conclusão   Referên...




   Java Server Pages - JSP                                                                        [5/5]


         Etapas da 1ª execução de uma página JSP




                                   Sistema de Informação para Web
Início   Apresen...   Servlets   JSP           JSF         Demons...   Conclusão   Referên...




                                 Sistema de Informação para Web
Início     Apresen...   Servlets   JSP           JSF         Demons...   Conclusão   Referên...




   Java Server Faces - JSF                                                                        [1/8]


         Java Server Faces é um framework MVC para o
         desenvolvimento de aplicações Web.
         Utilizado na criação de UIs através de um conjunto
         de componentes UIs pré-definidos.
         Fornece um conjunto de tags JSP para acessar os
         componentes.
         Reutiliza componentes da página.
         Suporte a internacionalização e acessibilidade.

                                   Sistema de Informação para Web
Início     Apresen...   Servlets   JSP           JSF         Demons...   Conclusão   Referên...




   Java Server Faces - JSF                                                                        [2/8]


         Associa os eventos do lado cliente com os
         manipuladores dos eventos do lado do servidor.
         Fornece separação de funções que envolvem a
         construção de aplicações Web.
         Um conjunto padrão de componentes de interface
         de usuário que possibilitam validação padronizada.
         Gerência de estados.



                                   Sistema de Informação para Web
Início     Apresen...   Servlets   JSP           JSF         Demons...   Conclusão   Referên...




   Java Server Faces - JSF                                                                        [3/8]

         Módulos do JSF
           Componentes - UIComponents e core tags
                  São classes que representam os componentes de interface
           Conversões
                  BigDecimalConverter, BigIntegerConverter, BooleanConverter, ByteCo
                  nverter entre outros...
           Navegabilidade - Regras de navegação
                  É o mecanismo que permite unir algum tipo de processamento com
                  seqüência de páginas a serem mostradas.
           Backbeans
                  São classes simples que possuem os métodos relacionados
           Validação
           Internacionalização

                                   Sistema de Informação para Web
Início     Apresen...   Servlets   JSP           JSF         Demons...   Conclusão   Referên...




   Java Server Faces - JSF                                                                        [4/8]


         Arquivo de configuração do faces (separados)
           faces-config.xml: declaramos validadores, locale, bundle ...

           managed-bean.xml: declaramos apenas os backbeans

           navegation-rules.xml: declaramos as regras de navegação

         Arquivo de configuração web.xml
           Configuração dos componentes utilizados pela aplicação



                                   Sistema de Informação para Web
Início     Apresen...   Servlets   JSP           JSF         Demons...   Conclusão   Referên...




   Java Server Faces - JSF                                                                        [5/8]

         faces-config.xml: declaramos validadores, locale, bundle...




                                   Sistema de Informação para Web
Início     Apresen...   Servlets   JSP           JSF         Demons...   Conclusão   Referên...




   Java Server Faces - JSF                                                                        [6/8]

         managed-bean.xml: declaramos apenas os backbeans




                                   Sistema de Informação para Web
Início     Apresen...   Servlets   JSP           JSF         Demons...   Conclusão   Referên...




   Java Server Faces - JSF                                                                        [7/8]

         navegation-rules.xml: declaramos as regras de navegação




                                   Sistema de Informação para Web
Início     Apresen...   Servlets   JSP           JSF         Demons...   Conclusão   Referên...




   Java Server Faces - JSF                                                                        [8/8]


         Resumo para programar utilizando JSF:
           Criar páginas usando UIComponents e as core tags do faces.

           Definir regras de navegação no arquivo de configuração do faces.

           Desenvolver backbeans

           Adicionar esses backbeans no arquivo de configuração do faces




                                   Sistema de Informação para Web
Início   Apresen...   Servlets   JSP           JSF         Demons...   Conclusão   Referên...




                        DEMONSTRAÇÃO




                                 Sistema de Informação para Web
Início    Apresen...   Servlets   JSP           JSF         Demons...   Conclusão   Referên...




   Demonstração                                                                                  [1/4]


         Ambiente para demonstração:
           IDE JAVA - Eclipse 3.4.2
           Apache Tomcat 6.0.18
           JSTL API - servlet-api.jar
           Mojarra 1.2_0 [JSF]




                                  Sistema de Informação para Web
Início     Apresen...   Servlets   JSP           JSF         Demons...   Conclusão   Referên...




   Demonstração                                                                                   [2/4]


         Código de página JSP




                                   Sistema de Informação para Web
Início     Apresen...   Servlets   JSP           JSF         Demons...   Conclusão   Referên...




   Demonstração                                                                                   [3/4]


         Código de página JSF




                                   Sistema de Informação para Web
Início     Apresen...   Servlets   JSP           JSF         Demons...   Conclusão   Referên...




   Demonstração                                                                                   [4/4]


         Página no navegador




                                   Sistema de Informação para Web
Início     Apresen...   Servlets   JSP           JSF         Demons...   Conclusão   Referên...




   Conclusão

         Um padrão de tecnologia

         Boa documentação de referência na Internet

         Aumento de produtividade

         Curva de aprendizado

         Manipulação de Arquivos de configuração



                                   Sistema de Informação para Web
Início      Apresen...   Servlets   JSP            JSF         Demons...   Conclusão   Referên...




   Referências
         http://www.servlets.com
         http://java.sun.com/products/jsp/docs.html
         http://www.henry.eti.br/pagina.php?IdPagina=117
         http://www.criarweb.com/artigos/227.php
         http://java.sun.com/javaee/javaserverfaces/reference/docs/index.html
         http://pt.wikipedia.org/wiki/JSF
         http://www.roseindia.net/jsf
         http://www.dsc.ufcg.edu.br/~jacques/cursos/daca/html/jsf/jsf.htm
         http://balusc.blogspot.com/2008/01/jsf-tutorial-with-eclipse-and-tomcat.html
         http://www.rponte.com.br/tag/mojarra/page/2/


                                     Sistema de Informação para Web
Início   Apresen...   Servlets         JSP           JSF         Demons...   Conclusão   Referên...




         {
                            Ciência da Computação – 7NA
                            Sistema de Informação para Web
                             Alunos:
                             Carlos Henrique          [ chenriquesp@gmail.com ]
                             Davi Hirafuji            [ superultradavi@gmail.com ]
                             Diego Castelo Branco     [ dcastelob@gmail.com ]
                             Vitor Costa              [ vcostaa@gmail.com ]



                      Jaboatão dos Guararapes, 18 de maio de 2009
                                       Sistema de Informação para Web

Apresentação JSF

  • 1.
    Início Apresen... Servlets JSP JSF Demons... Conclusão Referên... { Utilize as abas e botões de navegação ou teclado Ciência da Computação – 7NA Sistema de Informação para Web Alunos: Carlos Henrique [ chenriquesp@gmail.com ] Davi Hirafuji [ superultradavi@gmail.com ] Diego Castelo Branco [ dcastelob@gmail.com ] Vitor Costa [ vcostaa@gmail.com ] Sistema de Informação para Web
  • 2.
    Início Apresen... Servlets JSP JSF Demons... Conclusão Referên... Apresentação Abordagem da tecnologia de Servlets. Introdução sobre Java Server Pages – JSP. Introdução ao Java Server Faces – JSF. Demonstração das tecnologias. Sistema de Informação para Web
  • 3.
    Início Apresen... Servlets JSP JSF Demons... Conclusão Referên... SERVLETS Sistema de Informação para Web
  • 4.
    Início Apresen... Servlets JSP JSF Demons... Conclusão Referên... O que são Servlets? [1/3] Classes Java Instanciadas e executadas em associação com Servidores Web. API de construção de componentes. Lado Servidor Garantir padrão de comunicação (cliente servidor) Não possuem Interface gráfica. São executados em ambiente Java denominado “Container”. Geração de código HTML. Sistema de Informação para Web
  • 5.
    Início Apresen... Servlets JSP JSF Demons... Conclusão Referên... O que são Servlets? [2/3] Container – Java Virtual Machine Sistema de Informação para Web
  • 6.
    Início Apresen... Servlets JSP JSF Demons... Conclusão Referên... Servlets [3/3] Dificuldades de realização de manutenção. Dificuldades na divisão de trabalho. Velocidade no desenvolvimento. Sistema de Informação para Web
  • 7.
    Início Apresen... Servlets JSP JSF Demons... Conclusão Referên... JAVA SERVER PAGES - JSP Sistema de Informação para Web
  • 8.
    Início Apresen... Servlets JSP JSF Demons... Conclusão Referên... Java Server Pages - JSP [1/5] Desenvolvido pela SUN MicroSystems. Similar ao ASP e ao PHP. O Conteúdo resulta em páginas HTML que incluem com código Java e outras tags... Parte estática – HTML Parte dinâmica – JSP Compilação do Servlet no primeiro carregamento da página JSP  Gera HTML  Envia para o Navegador. Sistema de Informação para Web
  • 9.
    Início Apresen... Servlets JSP JSF Demons... Conclusão Referên... Java Server Pages - JSP [2/5] Valores de Escopo Request: O Java bean existe somente para a requisição corrente. Session: O Java bean pertence à sessão criada para o usuário. Page: O Java bean é compartilhado por todas as execuções da página. Application: O Java bean é compartilhado por toda a aplicação (todas as páginas, todas as sessões, ...). Sistema de Informação para Web
  • 10.
    Início Apresen... Servlets JSP JSF Demons... Conclusão Referên... Java Server Pages - JSP [3/5] Objetos Instanciados (9) request - javax.servlet.ServletRequest response - javax.servlet.ServletResponse pageContext - javax.servlet.jsp.PageContext session - javax.servlet.http.HttpSession application - javax.servlet.ServletContext out - javax.servlet.jsp.JspWriter config - javax.servlet.ServletConfig page - java.lang.Object exception - java.lang.Throwable Sistema de Informação para Web
  • 11.
    Início Apresen... Servlets JSP JSF Demons... Conclusão Referên... Java Server Pages - JSP [4/5] Como declarar? Declaração de Sintaxe: <% %> - O código java será executado no servidor. <% for(int i=0; i < 2000; i++){ out.println(“FG”); } %> Declaração de Expressão: <%= %> - Resultado retorna como string. <%= 1+1%> Resulta: 2 como string Diretivas <%@page import=“java.util.List” %> - importa pacotes de classes <%@page language=“java” %> - informa a linguagem utilizada Sistema de Informação para Web
  • 12.
    Início Apresen... Servlets JSP JSF Demons... Conclusão Referên... Java Server Pages - JSP [5/5] Etapas da 1ª execução de uma página JSP Sistema de Informação para Web
  • 13.
    Início Apresen... Servlets JSP JSF Demons... Conclusão Referên... Sistema de Informação para Web
  • 14.
    Início Apresen... Servlets JSP JSF Demons... Conclusão Referên... Java Server Faces - JSF [1/8] Java Server Faces é um framework MVC para o desenvolvimento de aplicações Web. Utilizado na criação de UIs através de um conjunto de componentes UIs pré-definidos. Fornece um conjunto de tags JSP para acessar os componentes. Reutiliza componentes da página. Suporte a internacionalização e acessibilidade. Sistema de Informação para Web
  • 15.
    Início Apresen... Servlets JSP JSF Demons... Conclusão Referên... Java Server Faces - JSF [2/8] Associa os eventos do lado cliente com os manipuladores dos eventos do lado do servidor. Fornece separação de funções que envolvem a construção de aplicações Web. Um conjunto padrão de componentes de interface de usuário que possibilitam validação padronizada. Gerência de estados. Sistema de Informação para Web
  • 16.
    Início Apresen... Servlets JSP JSF Demons... Conclusão Referên... Java Server Faces - JSF [3/8] Módulos do JSF Componentes - UIComponents e core tags São classes que representam os componentes de interface Conversões BigDecimalConverter, BigIntegerConverter, BooleanConverter, ByteCo nverter entre outros... Navegabilidade - Regras de navegação É o mecanismo que permite unir algum tipo de processamento com seqüência de páginas a serem mostradas. Backbeans São classes simples que possuem os métodos relacionados Validação Internacionalização Sistema de Informação para Web
  • 17.
    Início Apresen... Servlets JSP JSF Demons... Conclusão Referên... Java Server Faces - JSF [4/8] Arquivo de configuração do faces (separados) faces-config.xml: declaramos validadores, locale, bundle ... managed-bean.xml: declaramos apenas os backbeans navegation-rules.xml: declaramos as regras de navegação Arquivo de configuração web.xml Configuração dos componentes utilizados pela aplicação Sistema de Informação para Web
  • 18.
    Início Apresen... Servlets JSP JSF Demons... Conclusão Referên... Java Server Faces - JSF [5/8] faces-config.xml: declaramos validadores, locale, bundle... Sistema de Informação para Web
  • 19.
    Início Apresen... Servlets JSP JSF Demons... Conclusão Referên... Java Server Faces - JSF [6/8] managed-bean.xml: declaramos apenas os backbeans Sistema de Informação para Web
  • 20.
    Início Apresen... Servlets JSP JSF Demons... Conclusão Referên... Java Server Faces - JSF [7/8] navegation-rules.xml: declaramos as regras de navegação Sistema de Informação para Web
  • 21.
    Início Apresen... Servlets JSP JSF Demons... Conclusão Referên... Java Server Faces - JSF [8/8] Resumo para programar utilizando JSF: Criar páginas usando UIComponents e as core tags do faces. Definir regras de navegação no arquivo de configuração do faces. Desenvolver backbeans Adicionar esses backbeans no arquivo de configuração do faces Sistema de Informação para Web
  • 22.
    Início Apresen... Servlets JSP JSF Demons... Conclusão Referên... DEMONSTRAÇÃO Sistema de Informação para Web
  • 23.
    Início Apresen... Servlets JSP JSF Demons... Conclusão Referên... Demonstração [1/4] Ambiente para demonstração: IDE JAVA - Eclipse 3.4.2 Apache Tomcat 6.0.18 JSTL API - servlet-api.jar Mojarra 1.2_0 [JSF] Sistema de Informação para Web
  • 24.
    Início Apresen... Servlets JSP JSF Demons... Conclusão Referên... Demonstração [2/4] Código de página JSP Sistema de Informação para Web
  • 25.
    Início Apresen... Servlets JSP JSF Demons... Conclusão Referên... Demonstração [3/4] Código de página JSF Sistema de Informação para Web
  • 26.
    Início Apresen... Servlets JSP JSF Demons... Conclusão Referên... Demonstração [4/4] Página no navegador Sistema de Informação para Web
  • 27.
    Início Apresen... Servlets JSP JSF Demons... Conclusão Referên... Conclusão Um padrão de tecnologia Boa documentação de referência na Internet Aumento de produtividade Curva de aprendizado Manipulação de Arquivos de configuração Sistema de Informação para Web
  • 28.
    Início Apresen... Servlets JSP JSF Demons... Conclusão Referên... Referências http://www.servlets.com http://java.sun.com/products/jsp/docs.html http://www.henry.eti.br/pagina.php?IdPagina=117 http://www.criarweb.com/artigos/227.php http://java.sun.com/javaee/javaserverfaces/reference/docs/index.html http://pt.wikipedia.org/wiki/JSF http://www.roseindia.net/jsf http://www.dsc.ufcg.edu.br/~jacques/cursos/daca/html/jsf/jsf.htm http://balusc.blogspot.com/2008/01/jsf-tutorial-with-eclipse-and-tomcat.html http://www.rponte.com.br/tag/mojarra/page/2/ Sistema de Informação para Web
  • 29.
    Início Apresen... Servlets JSP JSF Demons... Conclusão Referên... { Ciência da Computação – 7NA Sistema de Informação para Web Alunos: Carlos Henrique [ chenriquesp@gmail.com ] Davi Hirafuji [ superultradavi@gmail.com ] Diego Castelo Branco [ dcastelob@gmail.com ] Vitor Costa [ vcostaa@gmail.com ] Jaboatão dos Guararapes, 18 de maio de 2009 Sistema de Informação para Web