O framework Tiles Component View (Tiles) é utilizado em conjunto com o Struts para facilitar a construção, configurações e manutenções de layout de interface. Isto é possível, principalmente, com a especificação do aquivo tiles-definitions.xml. A utilização do referido arquivo de configuração possibilita agregar componentes comuns a um conjunto de layouts de interface a partir de funcionalidades especificadas por alguns arquivos em .jsp sob um conceito de 'componentes'.Exemplo do arquivo de configuração do componenteUma característica também especificada por Tiles é a herança entre definições. A partir de um mecanismo de herança pode-se criar uma definição base e estabelecer que as demais herdem desta. A definição base somente deve conter as características gerais. A definição filha somente deve conter seus componentes únicos.Observe que a especificação apresentada no trecho de código do arquivo tiles-definitions.xml estabelece um layout comum (layout.normal) que possui 'componentes' de layout compartilhados (header, titleBar, menu, etc.) por diversas interfaces de cadastro (ou outras que possuírem a mesma estrutura). Sem este recurso seria necessário que cada interface (representada por um aquivo .jsp) especificasse sua estrutura de layout de maneira repetitiva e com codificação duplicada pelos diversos arquivos.Portanto, a utilização de Tiles estabelece (segundo a perspectiva apresentada) uma maneira otimizada de definir e especificar layouts de interface.Foram definidos no arquivo tiles-definitions.xml alguns layouts comuns que já possuem a estrutura necessária à interface padrão, e podem ser herdados no momento da criação de uma nova tela (arquivo jsp). Cada um destes possui seu jsp padrão com o código necessário, e podem ser encontrados no caminho: \tjpr-interface\trunk\Artefatos\Implementacao\interfaceWeb\web\jsp\layouts.Além dessas definições, o projeto já disponibiliza outros tiles que também obedecem à interface padrão e que podem/devem ser copiadas e adaptadas a outros projetos, como: “Welcome”, “Erro” e “Help”.Todos esses layouts são formados por jsp's, alguns comuns a todos e outros específicos a cada caso. Os comuns podem ser encontrados em /jsp/layouts/includes/ e são: “styles”, “Javascript”, “Header”, “Menu”, “Userinfo”, “Messages”, ContentFooter.

layout.normal #

Geralmente utilizada para telas de cadastro e pesquisas simples.

layout.wizard #

Utilizado para a criação de recursos de assistente.Atente para o fato de haver diferentes parâmetros de devem ser configurados, no momento da criação do tile que herda deste layout. Isto será melhor descrito no item Wizard deste documento.

layout.popup #

Utilizado nas telas de pesquisa de chave-estrangeira.

layout.tabbed #

Layout das telas mestre-detalhe que utilizam abas para a organização dos dados detalhe.Atente para o fato de haver diferentes parâmetros que devem ser configurados, no momento da criação do tile que herda deste layout. Isto será melhor descrito no item Abas deste documento.

Welcome #

Página inicial, encontrada http://svn-dev/view/main/tjpr-interface/trunk/Artefatos/Implementacao/interfaceWeb/web/jsp/welcome.jsp?revision=32271aqui

Erro #

Pagina padrão para erros,encontrada aqui

Help #

Página padrão de ajuda encontrada aqui

styles #

Possui as chamadas aos arquivos de estilo (css), encapsulando-os em um único arquivo a manutenção se torna mais fácil. Uma vez que surja a necessidade de inclusão de mais um arquivo de estilo, basta atualizar este único arquivo e os demais jsps estão automaticamente atualizados. Pode ser encontrado aqui

Javascript #

Possui as chamadas aos arquivos com funções javascript (js), encapsulando-os em um único arquivo a manutenção se torna mais fácil. Uma vez que surja a necessidade de inclusão de mais uma biblioteca, basta atualizar este único arquivo e os demais jsps estão automaticamente atualizados. Pode ser encontrado aqui

Header #

Concentra o layout do cabeçalho padrão encontrado aqui.

Menu #

Neste jsp deve-se definir as opções de menu, utilizando-se a tag desenvolvida para isso, de acordo com as permissões previamente cadastradas no Sistema de Segurança. Mais informações na orientação do Componente de Menu deste arquivo. Pode ser encontrado aqui

Userinfo #

Aqui devem ser apresentadas informações relevantes ao usuário que se encontra logado. O nome do usuário é informação obrigatória, e mais informações podem ser adicionadas opcionalmente. Pode ser encontrado aqui

Messages #

Jsp onde são definidas os modos de apresentação das mensagens de sucesso ou erro da aplicação. Pode ser encontrado aqui

Content #

Conteúdo da página propriamente dito. Este tile será substituído pelo jsp construído para o conteúdo a ser apresentado para captar as informações da aplicação.

Apresenta as informações de rodapé. (opcional)