Servlet and Filter Initialization Parameters
Some servlets and filters require initialization parameters. The init-param element within a filter or servlet definition element contains initialization parameters for that filter or servlet instance. These are distinct from context parameters, discussed in Set Context Parameters. Each init-param contains a param-name element and a param-value element. Although the servlet container does not interpret the contents of the param-name and param-value, the contents of these elements must be legal XML. If the web.xml file is in UTF-16, the servlet container transcodes the contents of the param-name and param-value to UTF-8.
The web.xml snippet below defines two initialization parameters for a servlet, greeting and fontsize, and two for a filter, request and response.
 
<servlet>
<servlet-name>helloWorld</servlet-name>
<servlet-class>hello.createHelloWorld</servlet-class>
<init-param>
<param-name>greeting</param-name>
<param-value>Hello, World!</param-value>
</init-param>
<init-param>
<param-name>fontsize</param-name>
<param-value>14</param-value>
</init-param>
</servlet>
<filter>
<filter-name>GenericFilter</filter-name>
<filter-class>org.apache.tester.WrapperFilter</filter-class>
<init-param>
<param-name>request</param-name>
<param-value>generic</param-value>
</init-param>
<init-param>
<param-name>response</param-name>
<param-value>generic</param-value>
</init-param>
</filter>
If a definition contains two or more parameters with the same name, the container will present one param-value and ignore the others.
Reading Initialization Parameters describes the interface a servlet or filter uses to read initialization parameters.