Formulário de cadastro com JSF e Bootstrap
Aprenda neste exemplo como criar interfaces ricas com Bootstrap e JSF. Saiba como o Pass-through elements pode te ajudar a ter mais controle sobre o HTML gerado pelos componentes nativos. Veja também como aplicar máscaras e validação front-end através da jQuery e plugins conhecidos como jQuery Validade e jQuery Mask Edit.
Projeto já adicionado aos favoritos. Clique aqui para ver todos seus favoritos
Obrigado pela sua avaliação, deixe o seu feedback nos comentários :D
Introdução
Um pouco sobre o Pass-through elements
Criar interfaces ricas é uma necessidade para a maioria das aplicações web. Com JavaServer Faces, quando a interface possui funcionalidades não suportadas pelos elementos da HTML, torna-se necessário escrever componentes customizados. A partir de um único componente podemos produzir código complexo, que atenda às necessidades do negócio do ponto de vista da usabilidade. Entretanto, escrever um componente não é uma tarefa simples e requer conhecimentos específicos.
Com a evolução da linguagem HTML, bem como a introdução de novos elementos, vem diminuindo cada vez mais a necessidade de escrever componentes customizados. Além disso a JavaServer Faces oferece suporte completo ao HTML5, não apenas através de componentes que mimetizam as funcionalidades dos elementos nativos, mas permitindo estruturar páginas completas com marcação HTML5. Uma das peças fundamentais nesse suporte é o Pass-through elements, sobre o qual falaremos ao longo desse exemplo.
Pass-through elements nos permite utilizar tags HTML, mas tratá-las como componentes JavaServer Faces. Para isso escrevemos a tag e utilizamos pelo menos um dos atributos no namespace http://xmlns.jcp.org/jsf a fim de associá-la a uma instância de UIComponente no back-end da aplicação:
<input type="text"
jsf:id="nome"
jsf:binding="#"
class="form-control"
placeholder="Meu Nome"
jsf:value="#{cadastroBean.cadastro.nome}"
required="required"/>
Perceba que no exemplo acima o namespace jsf precede os atributos value, binding e id, fazendo com que o elemento input faça parte do Facelet. Essa abordagem nos dá total controle sobre o HTML gerado pela aplicação, tornando-a compatível com qualquer framework front-end que exija uma estrutura HTML pré-determinada, como é o caso do Bootstrap.
Aparência do projeto
No slide a seguir podemos ver qual o resultado de uma página construída utilizando Bootstrap e JSF, através do Pass-through elements.
Principais características
A partir do slide a seguir você será apresentado aos recursos discutidos nos vídeos. Com ele você tem panorama completo com as principais características e funcionalidades exploradas nesse exemplo.
Sugestão de conteúdo prévio
- Artigo Conheça o Bootsface: Bootstrap para Java Server Face
- Curso O que é JSF?
- Curso Bean Validation: Validação de dados em Java
- Curso JSF: Minha primeira aplicação Java WEB
- Curso JSF e Hibernate: Como implementar um CRUD
Links
- Download do IntelliJ IDEA