Mapa mental
Java JSF
Conteúdo do mapa
Java JSF
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
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
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
- O JSF possui validadores customizados
<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"
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.
Messages
- http://prntscr.com/e3qwkh
- Para declarar
- Componente para mensagem de validacao
- Mensagens no objeto http://prntscr.com/e3qymv
- ligado com validadores
- http://prntscr.com/e3qwkh
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
- O PhaseListener tem 6 fases
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"
Imagens e arquivos do mapa
Informações
- Descrição
- Descrições dos componetes Java JSF
- Criado por
- Lorran Alves · jan 2017
- Atualizado
- 3 fev 2018
- Visualizações
- 6
- Avaliação