Diretório WEB-INF


O diretório /WEB-INF é uma parte fundamental da estrutura de diretórios de uma aplicação web baseada em Java EE (Enterprise Edition), incluindo aquelas que utilizam servlets e JavaServer Pages (JSP), como as que implementam o Spring MVC e JSF (JavaServer Faces).

Acesso restrito

O conteúdo dentro do diretório /WEB-INF não é acessível diretamente por meio de uma URL no navegador.

Somente recursos gerenciados pelo servidor, como servlets, podem acessar o conteúdo desse diretório. Isso é uma prática de segurança importante, pois evita que usuários não autorizados acessem arquivos críticos.

Arquivos de configuração

web.xml: Este é o arquivo de configuração principal para uma aplicação web Java. Ele define o comportamento da aplicação, incluindo configurações de servlets, mapeamentos de URL, filtros, listeners, entre outros.

Note

O web.xml é obrigatoriamente localizado no diretório /WEB-INF.

Configurações de Frameworks: Muitas aplicações usam outros arquivos de configuração (como Spring e JSF) que podem ser armazenados no diretório /WEB-INF.

Conteúdo Web estruturado

Pasta de Views

As páginas de visualização (como JSP, XHTML ou outras) podem ser armazenadas dentro de /WEB-INF/views/, o que permite que você controle melhor o acesso a essas páginas.

Elas não podem ser acessadas diretamente através da URL, mas podem ser renderizadas por servlets ou frameworks como o Spring MVC e JSF.

Templates

Se você está usando um sistema de templates (como JSF, Thymeleaf, etc.), você pode armazenar seus arquivos de template no /WEB-INF, garantindo que eles não sejam acessíveis diretamente.

Referências