Il file web.xml: varie note Nuovo manuale per la mia sezione dedicata al web. Questo sintetico manuale parla del famoso file web.xml. Volete sapere qualcosa in più su questo misterioso e utilissimo file delle web application? Volete conoscere alcuni suoi utilissimi parametri come quelli per il timeout dell'applicazione? |
Il file web.xml definisce alcuni comportamenti fondamentali per una applicazione web (servlet, pagine JSP, bean, ...).
Il file web.xml si deve trovare dentro la cartella WEB-INF che a sua volta si trova nella root della nostra applicazione.
Vediamo com'è fatto questo file.
Un esempio di file web.xml potrebbe essere il seguente è:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<display-name>
Nome dell'applicazione
</display-name>
<description>
Descrizione dell'applicazione
</description>
<context-param>
<param-name>nome_parametro</param-name>
<param-value>valore_parametro</param-value>
</context-param>
<servlet>
<servlet-name>nome_servlet</servlet-name>
<description>descrizione_servlet</description>
<servlet-class>path classe servlet</servlet-class>
<init-param>
<param-name>nome_parametro_servlet</param-name>
<param-value>valore</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>nome_per_invocare_la_servlet</servlet-name>
<url-pattern>/nome_per_invocare_la_servlet</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>60</session-timeout>
</session-config>
</web-app>
Vediamo di spiegare qualcuna delle sue parti.
context-param
In questa sezione vengono elencati i parametri che l'applicazione può usare.
Per leggere questi valori del context-param si può fare:
String value = getServletContext().getInitParameter("nome_parametro");
init-param
Qui troviamo i parametri di inizializzazione.
I parametri di inizializzazione di una servlet possono essere letti così:
String value = getServletConfig().getInitParameter("nome_parametro_servlet");
session-timeout
Qui si può indicare il timeout della sessione della servlet espresso in minuti.