Olá desenvolvedores, neste tutorial iremos criar templates ou layouts ou também como podemos chamar, includes, trata-se de uma forma de evitarmos repetição desnecessária de código. Por exemplo, se sua aplicação possui um rodapé que se repete em todas as páginas, por que repetir as linhas de código em todas elas?

Imagine agora se sua aplicação possui umas vinte páginas e você precise mudar um elemento do rodapé, um número de telefone, por exemplo. Se o mesmo código se repete em todas as páginas, será necessário mudar uma a uma. Mas há uma forma de evitar tal repetição e “retrabalho”, é o que iremos aprender neste tutorial, com os templates.

No contexto da nossa aplicação, o elemento que se repete é o menu. Assim, para que possa entender na prática como funcionam esses templates e/ou includes iremos aplicar a técnica ao menu. Mesmo que ele se repita apenas duas vezes, será o suficiente para que você entenda o conceito e a lógica por trás dessa implementação.

IMPLEMENTANDO O TEMPLATE

Se o item a partir do qual implementarei o template é o menu, devo então criar uma página .xhtml com o nome de menu. E este é um padrão que você deve obedecer, se fosse um cabeçalho provavelmente o nome da minha página seria header, se fosse o rodapé, o nome seria footer e por aí segue a lógica.

Na raiz da página WebContent crie a página menu.xhtml. Dentro da página insira todo o código correspondente ao menu, junto a declaração do JSF – JavaServer Faces.

Assim, nas páginas onde o menu será inserido, como “lançamento.xhtml” e “primeirapagina.xhtml” importaremos os Facelets JSF. Os Facelets fornecem tags especiais que possibilitam o gerenciamento de várias páginas comuns em um só lugar. Com as Facelets podemos criar layouts comuns para aplicações web.

No local onde anteriormente estava os itens de menu, iremos incluir a página menu.xhtml por meio do componente ui:include, passando o caminho da página referenciada.

<ui:include src= “/menu.xhtml” />

EM POUCAS PALAVRAS

Neste tutorial vimos como otimizar uma aplicação web quando houver repetição de trechos de códigos em várias páginas. A criação de templates além de proporcionar ganho de tempo, contribuirá também para a redução de código.