¡GoConqr estrena diseño! Cuéntanos qué te parece.

Mapa mental

Java JSF

Lorran Alves Java Portugués

Java JSF

Contenido del mapa

Java JSF

  1. Tags

    • Label <h:outputLabel />
    • Botão <h:commandButton value="nomeBotao" action="#{expression.language}" />
    • Input <h:inputText />
    • Organizar no Panel <h:PanelGrid columns="2" > </h:PanelGrid> o columns é opcional
    • <h:dataTable> <h:columns > </h:columns> </h:dataTable> Para listar as coisas é muito útil
    • <h:selectOneMenu id="autor" value="#{livroBean.autorId}"> <!-- Associa autor com livro (Verificar na tabela livro_autor) --> <f:selectItems value="#{livroBean.autores}" itemLabel="#{autor.nome}" itemValue="#{autor.id}" var="autor" /> <!-- #{livroBean.autores} chama função / Item label traz o nome na Label / itemValue = pega a Id do Autor --> </h:selectOneMenu>
      • Componente interessante que cria a tabela livro_autor e associa livro vs autor
  2. Bean

    • @ManagedBean não esquecer desta anotação
    • Os ManagedBeans representam a ligação entre modelo e visão.
    • Responsável por requisitar as classe modelo
    • http://prntscr.com/e4dutl
  3. Validadores

    • O JSF possui validadores customizados
      • Basta escrever uma clase para fazer a validaçao e no componente do botão escrever validator="#{nomeClasse.metodoValidador}"
    • Validador padrão de data basta declarar <f:convertDateTime pattern="dd/MM/yyyy" />
      • Veja a implementação http://prntscr.com/e3qy3e
    • Validando no campo http://prntscr.com/e3qzlm tamanho máximo 40 caracter
  4. <f:ajax >

    • Para funcionar é necessário declarar <h:head /> para carregar as biblioteca do js
    • Basta colocar sob o botao <f:ajax execute="idDoComponte" />
    • Se for necessário renderizar uma página colocar render="nome"
  5. Server App

    • O controlador lê o xhtml e instancia os componentes declarados. No final ele pede aos componentes a apresentação HTML e devolve o HTML como resposta para o navegador.
  6. Messages

    • http://prntscr.com/e3qwkh
      • Para declarar
    • Componente para mensagem de validacao
    • Mensagens no objeto http://prntscr.com/e3qymv
    • ligado com validadores
  7. PhraseListener

    • O PhaseListener tem 6 fases
      • A pimeira fase só instancia e renderiza para a fase 6 veja: http://prntscr.com/e4e1ia se não tiver nenhum dados somente chamada da página RESTORE_VIEW
      • Fase 2 recebe os dados passado pelo usuario APPLY_REQUEST_VALUE
      • Fase 3 Valida os dados se estiver com erro ele pula pra fase 6 veja : http://prntscr.com/e4e2q9 PROCESS_VALIDATION
      • Fase 4 Como nenhum erro ocorreu na terceira fase o controlador continua com a próxima que se chama UPDATE_VALUES.Aqui o modelo será atualizado com os valores convertidos na fase anterior
      • Fase 5 :Esta fase de chamada de métodos no ManagedBean é chamada de INVOKE_APPLICATION
      • Fase 6:Por fim, o JSF devolve uma resposta para o usuário, o que é feito na última fase, RENDER_RESPONSE veja : http://prntscr.com/e4e7de
    • Para intercepção do phase é necessário adicionar no faces-config.xml a tag lifeCycle veja na imagem demarcado : http://prntscr.com/e4e82x
    • Classe LogPhaseListener veja : http://prntscr.com/e4ebj1 e veja os detalhes da saída : http://prntscr.com/e4ec6k
    • Autorizador
      • Impede q o usuario navegue por páginas e nao tenha feito Login
      • Necessário adicionar <phase-listener>br.com.caelum.livraria.util.Autorizador</phase-listener> no faces-config
      • Classe Autorizador : http://prntscr.com/e6bbpw
        • LoginBean.efetuarLogin : http://prntscr.com/e6bcp5
  8. Templates

    • Para criar template é necessário deixar na pasta web-content
    • Associando template na página escolhida veja : http://prntscr.com/e4ery8
      • <ui:composition template="_template.xhtml"> não esquecer de tirar a tag body veja :: http://prntscr.com/e4eu66
      • Necessário add xmlns:ui="http://java.sun.com/jsf/facelets"

Imágenes y archivos del mapa

  • Java JSF

Información

Descripción
Descrições dos componetes Java JSF
Creado por
Lorran Alves · ene 2017
Actualizado
3 feb 2018
Visitas
6
Valoración

Escríbenos

¿Sobre qué es tu mensaje?

¿Qué te parece el nuevo diseño?

¿Te gusta?