Como é feita a configuração do JSP no descriptor de implantação?
sobes.tech IA
Resposta da IA
A configuração do JSP no descritor de implantação web.xml é feita usando os elementos <servlet> e <servlet-mapping>. O arquivo JSP é processado como um tipo especial de servlet.
-
Declaração do JSP como servlet:
O elemento
<servlet>é usado para declarar o recurso (<servlet-class>indica a implementação do servlet, mas para JSP é fornecido pelo contêiner) e atribuir-lhe um nome lógico (<servlet-name>). No caso do JSP, o nome da classe do servlet não é especificado, mas sim o elemento<jsp-file>.<!-- * Declaração do arquivo JSP como servlet --> <servlet> <servlet-name>myJspPage</servlet-name> <jsp-file>/myJsp.jsp</jsp-file> <!-- Caminho para o arquivo JSP relativo à raiz da aplicação web --> <!-- * Parâmetros de inicialização opcionais para a página JSP --> <init-param> <param-name>paramName</param-name> <param-value>paramValue</param-value> </init-param> </servlet> -
Associação do padrão URL com o servlet JSP:
O elemento
<servlet-mapping>vincula o nome lógico do servlet (<servlet-name>) a um padrão URL (<url-pattern>), pelo qual este servlet (e consequentemente, o JSP) será acessível.<!-- * Associação do padrão URL com o servlet JSP declarado --> <servlet-mapping> <servlet-name>myJspPage</servlet-name> <url-pattern>/mypage</url-pattern> <!-- URL para acessar o JSP --> </servlet-mapping> -
Outra configuração:
Também é possível configurar outros aspectos, como:
<load-on-startup>: Define a ordem de carregamento do JSP (quanto menor, mais cedo será carregado).<security-constraint>: Aplicação de restrições de segurança.<error-page>: Definição de páginas de erro.
Exemplo de configuração completa:
<!--
* Descritor de implantação da aplicação web
-->
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
version="4.0">
<!--
* Definição do arquivo JSP como servlet "myJspPage"
-->
<servlet>
<servlet-name>myJspPage</servlet-name> <!-- Nome lógico do servlet -->
<jsp-file>/myJsp.jsp</jsp-file> <!-- Caminho para o JSP -->
<load-on-startup>1</load-on-startup> <!-- Carregar na inicialização da aplicação -->
</servlet>
<!--
* Associação do padrão URL "/mypage" com o servlet "myJspPage"
-->
<servlet-mapping>
<servlet-name>myJspPage</servlet-name>
<url-pattern>/mypage</url-pattern> <!-- URL acessível -->
</servlet-mapping>
<!--
* Exemplo de outra associação para outro JSP
-->
<servlet-mapping>
<servlet-name>anotherJsp</servlet-name>
<url-pattern>/another</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>anotherJsp</servlet-name>
<jsp-file>/anotherPage.jsp</jsp-file>
</servlet>
</web-app>
Assim, web.xml permite gerenciar como os arquivos JSP são transformados em servlets e quais URLs os invocam, além de configurar seu comportamento na inicialização e carregamento.