Escolar Documentos
Profissional Documentos
Cultura Documentos
JSF 2
09/2016
Observaes
01 Desenvolvimento Web
02 Histrico JSF
03 JSF 2
04 Ciclo de vida
05 rvore de componentes
06 Escopos
07 Converters
08 Validators
09 Navegao
10 Events
11 Ajax
12 Templates (facelets)
13 Primefaces
14 Outras implementaes
15 Dicas desenvolvimento
16 JSF 2.2
17 JSF 2.3
18 Futuro JSF
19 Referncias
DESENVOLVIMENTO WEB
DESENVOLVIMENTO WEB
Frameworks Web
O que um framework?
"Um framework prov uma soluo para uma famlia de
problemas semelhantes, usando um conjunto de classes e
interfaces que mostra como decompor a famlia de problemas e
como objetos dessas classes colaboram para cumprir suas
responsabilidades, o conjunto de classes deve ser flexvel e
extensvel para permitir a construo de vrias aplicaes com
pouco esforo, especificando apenas as particularidades de cada
aplicao.
Framework MVC: Model-View-Controller
Tipos
Action based x Component based
DESENVOLVIMENTO WEB
Diferenas
So incompatveis, devido ao seu ciclo de vida.
MVC Push:
Desacoplamento entre a viso e o controller
Componentes so feitos com HTML, CSS e javascript.
MVC Pull:
Maior acoplamento entre a viso e o framework.
Permite criao de componentes de tela atravs de
cdigo Java (Wicket funciona assim, Swing like).
JSF
01 Desenvolvimento Web
02 Histrico JSF
03 JSF 2
04 Ciclo de vida
05 rvore de componentes
06 Escopos
07 Converters
08 Validators
09 Navegao
10 Events
11 Ajax
12 Templates (facelets)
13 Primefaces
14 Outras implementaes
15 Dicas desenvolvimento
16 JSF 2.2
17 JSF 2.3
18 Futuro JSF
19 Referncias
HISTRICO JSF
HISTRICO JSF
Histrico de verses:
JSF 2.3 (2017) - JSR 372 (https://jcp.org/en/jsr/detail?id=372)
JSF 2.2 (16/04/2013) - JSR 344 (https://jcp.org/en/jsr/detail?id=344)
JSF 2.1 (22/10/2010) - JSR 314 (https://jcp.org/en/jsr/detail?id=314)
JSF 2.0 (28/06/2009) - JSR 314 (https://jcp.org/en/jsr/detail?id=314)
JSF 1.2 (11/05/2006) - JSR 252 (https://jcp.org/en/jsr/detail?id=252)
JSF 1.1 (27/05/2004) - JSR 127 (https://jcp.org/en/jsr/detail?id=127)
JSF 1.0 (11/03/2004) - JSR 127 (https://jcp.org/en/jsr/detail?id=127)
JEE 5 iniciou adoo do JSF e ele entrou oficialmente no JEE 6
como parte da especificao.
* JSR = Java Specification Request. Definio de especificao avaliada pelo JCP (Java Community
Process) do que ser implementado em cada verso do JSE, JEE, etc.
Especificaes x Implementaes:
Mojarra (implementao referncia): https://
javaserverfaces.java.net/
Myfaces (implementao Apache): https://myfaces.apache.org/
01 Desenvolvimento Web
02 Histrico JSF
03 JSF
04 Ciclo de vida
05 rvore de componentes
06 Escopos
07 Converters
08 Validators
09 Navegao
10 Events
11 Ajax
12 Templates (facelets)
13 Primefaces
14 Outras implementaes
15 Dicas desenvolvimento
16 JSF 2.2
17 JSF 2.3
18 Futuro JSF
19 Referncias
JSF
JSF
Hello World
Configurando aplicao JSF 2.
web.xml
Declarando tags na pgina xhtml
Criando primeiro Managed Bean
http://localhost:8080/jsflab
http://localhost:8080/jsflab/dia1/primeiroManagedBean.xhtml
JSF
01 Desenvolvimento Web
02 Histrico JSF
03 JSF
04 Ciclo de vida
05 rvore de componentes
06 Escopos
07 Converters
08 Validators
09 Navegao
10 Events
11 Ajax
12 Templates (facelets)
13 Primefaces
14 Outras implementaes
15 Dicas desenvolvimento
16 JSF 2.2
17 JSF 2.3
18 Futuro JSF
19 Referncias
CICLO DE VIDA
CICLO DE VIDA
RestoreView: Na primeira requisio de um usurio, uma nova rvore de
componentes que representa a tela desse usurio gerada. Nas demais
requisies (postback) desse mesmo usurio, a rvore de componentes que
representa a tela anteriormente enviada a ele reconstruda.
CICLO DE VIDA
01 Desenvolvimento Web
02 Histrico JSF
03 JSF
04 Ciclo de vida
05 rvore de componentes
06 Escopos
07 Converters
08 Validators
09 Navegao
10 Events
11 Ajax
12 Templates (facelets)
13 Primefaces
14 Outras implementaes
15 Dicas desenvolvimento
16 JSF 2.2
17 JSF 2.3
18 Futuro JSF
19 Referncias
RVORE DE COMPONENTES
RVORE DE COMPONENTES
RVORE DE COMPONENTES
01 Desenvolvimento Web
02 Histrico JSF
03 JSF
04 Ciclo de vida
05 rvore de componentes
06 Escopos
07 Converters
08 Validators
09 Navegao
10 Events
11 Ajax
12 Templates (facelets)
13 Primefaces
14 Outras implementaes
15 Dicas desenvolvimento
16 JSF 2.2
17 JSF 2.3
18 Futuro JSF
19 Referncias
ESCOPOS
ESCOPOS
ESCOPOS
ESCOPOS - CONTEXTOS
FacesContext e ExternalContext
http://docs.oracle.com/javaee/6/api/javax/faces/context/
FacesContext.html
http://docs.oracle.com/javaee/6/api/javax/faces/context/
ExternalContext.html
01 Desenvolvimento Web
02 Histrico JSF
03 JSF
04 Ciclo de vida
05 rvore de componentes
06 Escopos
07 Converters
08 Validators
09 Navegao
10 Events
11 Ajax
12 Templates (facelets)
13 Primefaces
14 Outras implementaes
15 Dicas desenvolvimento
16 JSF 2.2
17 JSF 2.3
18 Futuro JSF
19 Referncias
CONVERTERS
CONVERTERS
Conversores especiais
<f:convertNumber>
Mais informaes: https://www.tutorialspoint.com/jsf/
jsf_convertnumber_tag.htm
<f:convertDateTime>
Mais informaes: https://www.tutorialspoint.com/jsf/
jsf_convertdatetime_tag.htm
CONVERTERS
Custom Validators:
Demo
01 Desenvolvimento Web
02 Histrico JSF
03 JSF
04 Ciclo de vida
05 rvore de componentes
06 Escopos
07 Converters
08 Validators
09 Navegao
10 Events
11 Ajax
12 Templates (facelets)
13 Primefaces
14 Outras implementaes
15 Dicas desenvolvimento
16 JSF 2.2
17 JSF 2.3
18 Futuro JSF
19 Referncias
http://www.mkyong.com/tutorials/jsf-2-0-tutorials/
VALIDATORS
Aps a converso, o JSF pode aplicar uma etapa de validao (fase Process
Validation)
Validaes padro:
Campo obrigatrio (required)
<h:inputText value="#{testeBean.nome}" id="campo-nome"
required="true"/> 2 <h:message for="campo-nome"/>
<h:inputText value="#{testeBean.nome}" id="campo-nome">
<f:validateRequired/>
</h:inputText>
Outros validadores:
<f:validateLongRange>
<f:validateDoubleRange>
<f:validateLength>
<f:validateRegex>
VALIDATORS
Exibindo mensagens de erro:
<h:message>
VALIDATORS
Conjunto de chaves/valores.
Exemplo: javax.faces.converter.BooleanConverter.BOOLEAN={1}:
{0} must be true or false
VALIDATORS
VALIDATORS
Validaes (Beans validation):
@AssertFalse: Verifica se uma propriedade booleana possui valor false.
@AssertTrue: Verifica se uma propriedade booleana possui valor true.
@DecimalMax: Define o valor real mximo que uma propriedade pode
armazenar.
@DecimalMin: Define o valor real mnimo que uma propriedade pode assumir.
@Digits: Define a quantidade mxima de dgitos da parte inteira (atravs do
atributo integer) ou da parte fracionria (atravs do atributo fraction) de um
nmero.
@Future: Verifica se uma data posterior ao instante atual.
@Max :Define o valor inteiro mximo que uma propriedade pode assumir.
@Min: Define o valor inteiro mnimo que uma propriedade pode armazenar.
@NotNull: Verifica se o valor de uma propriedade no null.
@Null: Verifica se o valor de uma propriedade null.
@Past: Verifica se uma data anterior ao instante atual.
@Pattern: Verifica se o valor de uma propriedade respeita uma expresso
regular.
@Size: Define os tamanhos mnimo (atravs do atributo min) e mximo (atravs
do atributo max) para uma Collection, array ou String.
VALIDATORS
VALIDATORS
Personalizando mensagem usando Beans Validation:
@NotNull(message="O nome no pode ser nulo") private String nome;
Arquivo de configurao:
br.com.teste.Funcionario.nome=O nome do funcionrio no pode ser nulo
@NotNull(message="br.com.teste.Funcionario.nome") private String nome;
javax.validation.constraints.NotNull.message=O nome do funcionrio no pode ser
nulo
Outras demais:
@AssertFalse: {javax.validation.constraints.AssertFalse.message}"
@AssertTrue: {javax.validation.constraints.AssertTrue.message}"
@DecimalMax: {javax.validation.constraints.DecimalMax.message}"
@DecimalMin: "{javax.validation.constraints.DecimalMin.message}"
@Digits: {javax.validation.constraints.Digits.message}"
@Future: {javax.validation.constraints.Future.message}"
@Max: {javax.validation.constraints.Max.message}"
@Min: "{javax.validation.constraints.Min.message}"
@Null: {javax.validation.constraints.Null.message}"
@Past: {javax.validation.constraints.Past.message}"
@Pattern: {javax.validation.constraints.Pattern.message}"
@Size: "{javax.validation.constraints.Size.message}"
VALIDATORS
Criando seu prprio validator
@FacesValidator("com.mkyong.EmailValidator")
public class EmailValidator implements Validator{
VALIDATORS
VALIDATORS
import javax.validation.Constraint;
import javax.validation.Payload;
01 Desenvolvimento Web
02 Histrico JSF
03 JSF
04 Ciclo de vida
05 rvore de componentes
06 Escopos
07 Converters
08 Validators
09 Navegao
10 Events
11 Ajax
12 Templates (facelets)
13 Primefaces
14 Outras implementaes
15 Dicas desenvolvimento
16 JSF 2.2
17 JSF 2.3
18 Futuro JSF
19 Referncias
NAVEGAO
NAVEGAO
Tipos de navegao:
Navegao implcita: outcome tem o nome do arquivo destino sem o sufixo
Exemplo:
<h:commandButton value="Pgina 2" action="pagina2"/>
<h:link outcome="pagina1"> <h:outputText value="Pgina 1"/> </
h:link>
<h:commandButton value="Pgina 2" action="/diretorio1/diretorio2/
pagina2"/>
<h:commandButton value="Pgina 2" action="diretorio2/pagina2"/>
Navegao explicita: outcome tem nome diferente do arquivo destino. O
destino deve ter o nome completo do arquivo. Deve ser declarada no
faces-config.xml.
<navigation-rule> <from-view-id>/pagina1.xhtml</from-view-id>
<navigation-case> <from-outcome>proxima</from-outcome> <to-
view-id>/pagina2.xhtml</to-view-id> </navigation-case> </
navigation-rule>
<h:commandButton value="Prxima tela" action="proxima"/>
NAVEGAO
NAVEGAO
Navegao dinmica
<h:commandButton value="Lanar Moeda" action="#{caraOuCoroaBean.lanca}" />
@ManagedBean
return cara;
}else{
return coroa;
01 Desenvolvimento Web
02 Histrico JSF
03 JSF
04 Ciclo de vida
05 rvore de componentes
06 Escopos
07 Converters
08 Validators
09 Navegao
10 Events
11 Ajax
12 Templates (facelets)
13 Primefaces
14 Outras implementaes
15 Dicas desenvolvimento
16 JSF 2.2
17 JSF 2.3
18 Futuro JSF
19 Referncias
EVENTS
Trs categorias:
FacesEvent
PhaseEvent
SystemEvent
EVENTS
FacesEvent
action x actionListener:
action: Retorno void ou String. No caso de retorno de String ser
usada como regra de navegao. Conceitualmente deve ser
usado para mtodos de regras de negocio da aplicao.
actionListener: Retorna void e tem como parmetro ActionEvent.
Conceitualmente deve ser usado por mtodos que implementem
lgica de interface. Sempre ser invocado antes da action.
(bloquear ou esconder componentes)
EVENTS
FacesEvent
ValueChangeEvent: Disparado quando o valor de um
componente modificado.
@ManagedBean
public class ProdutoBean {
Outra forma:
<h:inputText id="preco"> <f:valueChangeListener type="teste.RegistraAlteracao" /> </h:inputText
EVENTS
PhaseListener: Eventos disparados pelo JSF antes e depois de cada uma das fases do
processamento de uma requisio. Esses eventos so teis para monitorar a execuo das
fases.
Para tratar um PhaseEvent, podemos criar uma classe que implemente a interface
javax.faces.event.PhaseListener.
Alm disso, precisamos registrar essa classe no arquivo faces-config.xml. A interface
PhaseListener obriga a implementao de trs mtodos: afterPhase(), beforePhase() e
getPhaseId().
O mtodo getPhaseId() deve devolver a referncia de um objeto do tipo
javax.faces.event.PhaseId, que indica em quais fases do processamento de
uma requisio estamos interessados. Se estivermos interessados nos eventos
da fase Apply Request Values, por exemplo, podemos fazer esse mtodo
devolver PhaseId.APPLY_REQUEST_VALUES.
Os valores que podem ser utilizados so:
PhaseId.RESTORE_VIEW
PhaseId.APPLY_REQUEST_VALUES
PhaseId.INVOKE_APPLICATION
PhaseId.PROCESS_VALIDATIONS
PhaseId.UPDATE_MODEL_VALUES
PhaseId.RENDER_RESPONSE
PhaseId.ANY_PHASE
<lifecycle> <phase-listener>br.teste.MonitorPhaseListener</phase-listener> </
lifecycle>
EVENTS
SystemEvent: Similares aos PhaseEvents no sentido de que ambos esto
relacionados a pontos especficos de execuo de uma aplicao JSF.
Contudo, os eventos de sistema so gerados em diversos pontos no
cobertos pelos eventos de fase. Todas as classes que definem eventos de
sistema so subclasses de javax.faces.event.SystemEvent.
PostConstructApplicationEvent: gerado imediatamente aps o incio
da aplicao, depois que todas as configuraes so processadas.
PreDestroyApplicationEvent: Esse tipo de evento gerado
imediatamente antes da aplicao ser finalizada.
ExceptionQueuedEvent: Esse evento gerado assim que uma exceo
no esperada lanada durante o processamento de uma requisio.
Alguns exemplos de excees esperadas durante o processamento de
uma requisio so aquelas relacionadas converso e validao dos
dados.
PreValidateEvent e PostValidateEvent: Esses eventos so gerados
imediatamente antes e logo aps um componente ser validado,
respectivamente.
EVENTS
SystemEvent
<f:event type="postValidate" listener="#{extratoBean.validaDatas}" />
preRenderComponent:javax.faces.event.PreRenderComponentEvent
preRenderView: javax.faces.event.PreRenderViewEvent
postAddToView: javax.faces.event.PostAddToViewEvent
preValidate: javax.faces.event.PreValidateEvent
postValidate: javax.faces.event.PostValidateEvent
Exemplo: preRenderView
EVENTS
Immediate
Por padro, a converso e a validao dos dados de um
componente de entrada so realizadas na fase Process
Validation.
Alm disso, os eventos de mudana de valor
(ValueChangeEvent) tambm ocorrem nessa fase.
EVENTS
Immediate
Tambm por padro, os eventos de ao (ActionEvent)
associados aos componentes
<h:commandButton>ou<h:commandLink>so disparados no final
da fase Invoke Application do processamento de uma requisio.
Esse comportamento pode ser alterado atravs do atributo
immediate desses componentes.
Para Input: Tornar o componente alta prioridade para
validao. Se qualquer validao falhar, ento nenhum
outro componente no mesmo form validado.
Para submit: Permite pular a fase de validao
01 Desenvolvimento Web
02 Histrico JSF
03 JSF
04 Ciclo de vida
05 rvore de componentes
06 Escopos
07 Converters
08 Validators
09 Navegao
10 Events
11 Ajax
12 Templates (facelets)
13 Primefaces
14 Outras implementaes
15 Dicas desenvolvimento
16 JSF 2.2
17 JSF 2.3
18 Futuro JSF
19 Referncias
AJAX
AJAX
Duas caractersticas:
A primeira a possibilidade de atualizar trechos de uma pgina
ao invs da pgina inteira.
A segunda poder realizar requisies sem interromper a
navegao dos usurios.
<h:inputText> <f:ajax/></h:inputText>
AJAX
Agrupando chamadas:
Render
<h:commandButton value="Gera Nmero"> <f:ajax event="click"
render="numero"/></h:commandButton>
< h : o u t p u t Te x t id="numero"
value="#{geradorDeNumeroBean.numero}"/>
AJAX
Aes:
<h:commandButton value="Salva"> <f:ajax event=click"
execute="formulario" render="formulario"
listener=#{produtoBean.salva}/></h:commandButton>
Alm dos ids podem ser usados com render e execute os seguintes
valores:
@all refere-se a todos os componentes da tela.
@none refere-se a nenhum componente.
@this refere-se ao componente que disparou a requisio AJAX.
@form refere-se aos componentes do formulrio que contm o
componente que disparou a requisio AJAX.
01 Desenvolvimento Web
02 Histrico JSF
03 JSF
04 Ciclo de vida
05 rvore de componentes
06 Escopos
07 Converters
08 Validators
09 Navegao
10 Events
11 Ajax
12 Templates (facelets)
13 Primefaces
14 Outras implementaes
15 Dicas desenvolvimento
16 JSF 2.2
17 JSF 2.3
18 Futuro JSF
19 Referncias
TEMPLATES (FACELETS)
TEMPLATES (FACELETS)
TEMPLATES (FACELETS)
Ciclo de vida:
1) Quando um cliente, como um navegador, faz uma nova solicitao para uma pgina que criado usando
Facelets, uma nova rvore de componente ou javax.faces.component.UIViewRoot criado e colocado no
FacesContext.
2) O UIViewRoot aplicada aos Facelets, e a view preenchida com componentes para processamento.
4) No processamento, o estado desta view armazenado para o prximo request. O estado de componentes
de entrada e dados do formulrio armazenado.
5) O cliente pode interagir com a vista e solicitar uma outra view ou alterao do JavaServer Faces. Neste
momento a exibio salva restaurada a partir do estado armazenado.
6) A viso restaurada mais uma vez passou pelo ciclo de vida do JSF, que eventualmente ser ou gerar uma
nova viso ou re-tornar a viso atual se no houvesse problemas de validao e nenhuma ao foi acionado.
9) A nova view ento renderizado de volta como uma resposta para o cliente.
TEMPLATES (FACELETS)
Exemplo prtico.
TEMPLATES (FACELETS)
Exemplo.
01 Desenvolvimento Web
02 Histrico JSF
03 JSF
04 Ciclo de vida
05 rvore de componentes
06 Escopos
07 Converters
08 Validators
09 Navegao
10 Events
11 Ajax
12 Templates (facelets)
13 Primefaces
14 Outras implementaes
15 Dicas desenvolvimento
16 JSF 2.2
17 JSF 2.3
18 Futuro JSF
19 Referncias
PRIMEFACES
PRIMEFACES
Verses:
Community - Gratuito. Mantido pela comunidade, sem suporte
do time do Primefaces. Tem acesso apenas a major release
(Exemplo: 6.0. No tem acesso a 6.0.1)
Elite - Pagamento anuidade (US$ 99,00 por desenvolvedor
anual). Tem acesso a releases intermedirias.
Pro - Eles pedem para entrar em contato e negociar. Tem
direito a suporte pelo time do Primefaces.
Mais informaes:
http://www.primefaces.org/support
Cdigo fonte:
https://github.com/primefaces/primefaces
PRIMEFACES
Showcase
http://www.primefaces.org/showcase/
PRIMEFACES
Primefaces Theme
Primefaces mobile
Primefaces Push
PRIMEFACES EXTENSIONS
Definio do site:
Primefaces extensions uma biblioteca de componentes
open source para JSF 2. O projeto construdo em cima das
PrimeFaces. Primefaces extensions consiste em
componentes estendidos ausentes em outras bibliotecas ou
com componentes melhorados que j existem em algum
lugar, mas no trabalham l sem problemas. Alm disso ele
fornece ClientBehaviors teis, conversores, taghandlers e
muito mais. Eles esto apresentados no lado esquerdo.
Correspondentes casos de uso so mostrados na parte
superior sobre a documentao direita e tag along com
eventos comportamento do cliente na parte inferior direita.
http://www.primefaces.org/showcase-ext/views/home.jsf
http://primefaces-extensions.github.io/
https://github.com/primefaces-extensions
01 Desenvolvimento Web
02 Histrico JSF
03 JSF
04 Ciclo de vida
05 rvore de componentes
06 Escopos
07 Converters
08 Validators
09 Navegao
10 Events
11 Ajax
12 Templates (facelets)
13 Primefaces
14 Outras implementaes
15 Dicas desenvolvimento
16 JSF 2.2
17 JSF 2.3
18 Futuro JSF
19 Referncias
ButterFaces:
http://www.butterfaces.org/
https://github.com/ButterFaces/ButterFaces
Angular Faces: https://www.angularfaces.net/
https://www.angularfaces.net/tetris/index.jsf
Ttulo del documento | 84
ndice
01 Desenvolvimento Web
02 Histrico JSF
03 JSF
04 Ciclo de vida
05 rvore de componentes
06 Escopos
07 Converters
08 Validators
09 Navegao
10 Events
11 Ajax
12 Templates (facelets)
13 Primefaces
14 Outras implementaes
15 Dicas desenvolvimento
16 JSF 2.2
17 JSF 2.3
18 Futuro JSF
19 Referncias
DICAS
DICAS
Onde aprender mais
Documentao oficial:
http://docs.oracle.com/javaee/6/tutorial/doc/bnadp.html
BalusC
http://balusc.omnifaces.org/
http://stackoverflow.com/users/157882/balusc
Rafael Ponte
http://www.rponte.com.br/
http://blog.triadworks.com.br/
Artigo clssico: http://www.rponte.com.br/2008/11/24/os-10-maus-habitos-dos-
desenvolvedores-jsf/
http://blog.triadworks.com.br/jsf-nao-coloque-processamento-caro-em-metodos-getters
Blog da caelum:
http://blog.caelum.com.br/10-razoes-para-migrar-sua-aplicacao-para-jsf-2/
K19
http://www.k19.com.br/downloads/apostilas/java/k19-k12-desenvolvimento-web-com-
jsf2-e-jpa2
Alura (https://www.alura.com.br/)
Casa do cdigo (https://www.casadocodigo.com.br/)
http://www.tutorialspoint.com/jsf/
http://www.mkyong.com/tutorials/jsf-2-0-tutorials/
http://www.coreservlets.com/JSF-Tutorial/
01 Desenvolvimento Web
02 Histrico JSF
03 JSF
04 Ciclo de vida
05 rvore de componentes
06 Escopos
07 Converters
08 Validators
09 Navegao
10 Events
11 Ajax
12 Templates (facelets)
13 Primefaces
14 Outras implementaes
15 Dicas desenvolvimento
16 JSF 2.2
17 JSF 2.3
18 Futuro JSF
19 Referncias
JSF 2.2
Suporte HTML 5
Componente de upload
Multi-templating
01 Desenvolvimento Web
02 Histrico JSF
03 JSF
04 Ciclo de vida
05 rvore de componentes
06 Escopos
07 Converters
08 Validators
09 Navegao
10 Events
11 Ajax
12 Templates (facelets)
13 Primefaces
14 Outras implementaes
15 Dicas desenvolvimento
16 JSF 2.2
17 JSF 2.3
18 Futuro JSF
19 Referncias
JSF 2.3
01 Desenvolvimento Web
02 Histrico JSF
03 JSF
04 Ciclo de vida
05 rvore de componentes
06 Escopos
07 Converters
08 Validators
09 Navegao
10 Events
11 Ajax
12 Templates (facelets)
13 Primefaces
14 Outras implementaes
15 Dicas desenvolvimento
16 JSF 2.2
17 JSF 2.3
18 Futuro JSF
19 Referncias
FUTURO JSF
01 Desenvolvimento Web
02 Histrico JSF
03 JSF
04 Ciclo de vida
05 rvore de componentes
06 Escopos
07 Converters
08 Validators
09 Navegao
10 Events
11 Ajax
12 Templates (facelets)
13 Primefaces
14 Outras implementaes
15 Dicas desenvolvimento
16 JSF 2.2
17 JSF 2.3
18 Futuro JSF
19 Referncias
REFERNCIAS
1. http://docs.oracle.com/javaee/6/tutorial/doc/bnafd.html
2. https://www.caelum.com.br/apostila-java-testes-jsf-web-services-design-patterns/
3. http://www.rponte.com.br/2008/11/24/os-10-maus-habitos-dos-desenvolvedores-jsf/
4. http://blog.caelum.com.br/10-razoes-para-migrar-sua-aplicacao-para-jsf-2/
5. https://pt.wikipedia.org/wiki/JavaServer_Faces
6. https://en.wikipedia.org/wiki/JavaServer_Faces
7. http://richfaces.jboss.org/
8. http://showcase.omnifaces.org/
9. http://www.icesoft.org/java/projects/ICEfaces/overview.jsf
10.http://jdevelopment.nl/jsf-22/
11.http://blog.caelum.com.br/entenda-os-mvcs-e-os-frameworks-action-e-component-based/
12.http://www.dsc.ufcg.edu.br/~jacques/cursos/map/html/frame/oque.htm
13.http://www.softwareengineeringsolutions.com/thoughts/frameworks/JSF-lifecycle.htm
14.http://blog.caelum.com.br/jsf-lidando-com-o-estado-da-view/
15.http://download.oracle.com/otn_hosted_doc/jdeveloper/j2ee101302/jsf_apps/eventvalidate/sf_avc_converters.html
16.http://www.k19.com.br/downloads/apostilas/java/k19-k12-desenvolvimento-web-com-jsf2-e-jpa2
17.http://blog.triadworks.com.br/quando-usar-action-ou-actionlistener-com-jsf
18.http://stackoverflow.com/questions/3909267/differences-between-action-and-actionlistener
19.http://stackoverflow.com/questions/8177288/list-of-jsf-2-events
20.http://www.slideshare.net/drspockbr/novidades-do-jsf-22
21.http://www.devmedia.com.br/java-server-faces-technology-conceitos-avancados/25877
22.http://codigofonte.uol.com.br/artigos/o-que-e-o-ajax-e-como-ele-funciona
23.https://docs.oracle.com/javaee/7/tutorial/jsf-intro006.htm
24.http://balusc.omnifaces.org/2006/09/debug-jsf-lifecycle.html
25.http://balusc.omnifaces.org/2011/09/communication-in-jsf-20.html
26.http://www.beyondjava.net/blog/jsf-viewstate-and-csrf-hacker-attacks/
27.https://www.mkyong.com/jsf2/jsf-2-convertnumber-example/
28.http://www.mkyong.com/jsf2/jsf-2-convertdatetime-example/
29. http://pt.slideshare.net/fredmaia/java-web-facil-com-v-raptor
30.http://stackoverflow.com/questions/1247627/java-component-based-vs-request-based-frameworks
31.https://www.mkyong.com/jsf2/composite-components-in-jsf-2-0/
32.https://www.tutorialspoint.com/jsf/jsf_composite_components.htm
33.http://docs.oracle.com/javaee/6/tutorial/doc/giqzr.html
34.https://emmanuelnerisouza.wordpress.com/2014/11/19/passando-parametros-na-tag-jsf-uiinclude/
35.https://www.mkyong.com/jsf2/composite-components-in-jsf-2-0/
36.http://docs.oracle.com/javaee/6/tutorial/doc/giqzr.html
37.https://www.tutorialspoint.com/jsf/jsf_composite_components.htm
38.http://www.devmanuals.com/tutorials/java/jsf/jsf2TagLibrary/composite/insertChildren.html
39.http://www.primefaces.org/docs/guide/primefaces_user_guide_6_0.pdf
40.http://www.coreservlets.com/JSF-Tutorial/
41.http://www.mkyong.com/tutorials/jsf-2-0-tutorials/
ISL Salvador
Av Tancredo Neves, Liz empresarial Segundo Andar
Iguatemi
Salvador BA
T +55 11 3025 1133
www.indracompany.com