Main Tutorials

How to pass parameters to a servlet – ServletConfig

Here’s a serlvet code example to demonstrate how to pass a parameter to a servlet by using ServletConfig “init-param” in web.xml

In the deployment descriptor (web.xml)

Put your parameter value in “init-param” and make sure inside the “servlet” element


        <servlet>
		<servlet-name>ServletName</servlet-name>
		<servlet-class>com.mkyong.ServletDemo</servlet-class>
		
		<init-param>
			<param-name>email</param-name>
			<param-value>[email protected]</param-value>
		</init-param>
	</servlet>
	
	<servlet-mapping>
		<servlet-name>ServletName</servlet-name>
		<url-pattern>/Demo</url-pattern>
	</servlet-mapping>

Servlet code


public void doGet(HttpServletRequest request, HttpServletResponse response)
	throws IOException{
	
		PrintWriter pw = response.getWriter();
		pw.println(getServletConfig().getInitParameter("email"));
		
	}

The “getServletConfig().getInitParameter(“email”)” method is use to get the ServletConfig parameter value in web.xml. Btw, this parameter only available for this servlet only. If you want a parameter which allow globally access by whole web application, you need put the parameter in servlet context element.

Here’s an example to pass parameter to whole web application.

About Author

author image
Founder of Mkyong.com, love Java and open source stuff. Follow him on Twitter. If you like my tutorials, consider make a donation to these charities.

Comments

Subscribe
Notify of
2 Comments
Most Voted
Newest Oldest
Inline Feedbacks
View all comments
Ashish
8 years ago

how to change value of servlet config parameter at runtime.

Viswanath
9 years ago

Is it possible to extend the above servlet and then to access the init-parameter in the extended servlet.
Like we could create a global variable and save the servletConfig object then to access the variable in the extended servlet.