Thursday 10, Apr 2025
We are moved to new domain
Click -> www.ehowtonow.com
Saturday, 5 April 2014

Servlet – ServletContext Interface

In this tutorial we are going to see about ServletContext Interface with example program.

public interface ServletContext
Defines a set of methods that a servlet uses to communicate with its servlet container, for example, to get the MIME type of a file, dispatch requests, write to a log file. Simple ServletContext object can be used to provide inter-application communication like pass configuration information from web.xml, set, get, remove attributes in application scope etc.

There is one context per "web application" per Java Virtual Machine.

The ServletContext object is contained within the ServletConfig object, which the Web server provides the servlet when the servlet is initialized.

The getServletContext(); method of ServletConfig interface returns ServletContext object.

Fields in ServletContext Interface

static final String TEMPDIR
The name of the ServletContext attribute which stores the private temporary directory (of type java.io.File) provided by the servlet container for the ServletContext

static final String ORDERED_LIBS
The name of the ServletContext attribute whose value (of type java.util.List<java.lang.String>) contains the list of names of JAR files in WEB-INF/lib ordered by their web fragment names (with possible exclusions if <absolute-ordering> without any <others/> is being used), or null if no absolute or relative ordering has been specified

Methods in ServletContext Interface
Few commonly used methods alone given here. see more about Servlet Context methods

S.NO
Method with Description
1 ServletContext getContext(String uripath)
Returns a ServletContext object that corresponds to a specified URL on the server.
2 String getContextPath()
Returns the context path of the web application.
3 RequestDispatcher getRequestDispatcher(String path)
Returns a RequestDispatcher object that acts as a wrapper for the resource located at the given path. A RequestDispatcher object can be used to forward a request to the resource or to include the resource in a response. The resource can be dynamic or static.
4 String getInitParameter(String name)
Returns a String containing the value of the named context-wide initialization parameter, or null if the parameter does not exist.
5 java.util.Enumeration<String> getInitParameterNames()
Returns the names of the context's initialization parameters as an Enumeration of String objects, or an empty Enumeration if the context has no initialization parameters.
6 Object getAttribute(String name)
Returns the servlet container attribute with the given name, or null if there is no attribute by that name
7 java.util.Enumeration<String> getAttributeNames()
Returns an Enumeration containing the attribute names available within this ServletContext.
8 void setAttribute(java.lang.String name,java.lang.Object object)
Binds an object to a given attribute name in this ServletContext. If the name specified is already used for an attribute, this method will replace the attribute with the new to the new attribute.
9 void removeAttribute(String name)
Removes the attribute with the given name from this ServletContext. After removal, subsequent calls to getAttribute(String) to retrieve the attribute's value will return null.

Now see ServletContext with example program.
1. Create new Dynamic web project by choosing File –> New –> Dynamic Web Project .
2. Create the Project called ServletExample as given below.
Servlet-dynamic web project
3. Create package called com.javatutorialscorner.servlet under ServletExample.
4. Create Servlet called ServletContextExample as shown in figure.
Create Servlet
http servlet
5. Click Next it will show URL mapping.You can edit Servlet URL if you need.
6. Click Next it will show methods available  in HttpServlet. Select appropriate method you need.
http servlet Services
7. By default your servlet will be mapped in web.xml, if your servlet not mapped in your web.xml use the following configuration to map the servlet in your web.xml
Servlet Mapping
1.<servlet>
2.    <servlet-name>Your Servlet Name</servlet-name>
3.    <servlet-class>Fully Qulaified Servlet Class Name</servlet-class>
4.  </servlet>
5.  <servlet-mapping>
6.    <servlet-name>Your Servlet Name</servlet-name>
7.    <url-pattern>/URL to Call Servlet</url-pattern>
8.  </servlet-mapping>

web.xml

01.<?xml version="1.0" encoding="UTF-8"?>
05. id="WebApp_ID" version="3.0">
06. <display-name>ServetExample</display-name>
07. <welcome-file-list>
08.  <welcome-file>index.html</welcome-file>
09.  <welcome-file>index.htm</welcome-file>
10.  <welcome-file>index.jsp</welcome-file>
11.  <welcome-file>default.html</welcome-file>
12.  <welcome-file>default.htm</welcome-file>
13.  <welcome-file>default.jsp</welcome-file>
14. </welcome-file-list>
15. <servlet>
16.  <servlet-name>ServletContextExample</servlet-name>
17.  <servlet-class>com.javatutorialscorner.servlet.ServletContextExample</servlet-class>
18.   
19. </servlet>
20. <context-param>
21. <param-name>dbname</param-name>
22. <param-value>jtctutorials</param-value>
23. </context-param>
24. <servlet-mapping>
25.  <servlet-name>ServletContextExample</servlet-name>
26.  <url-pattern>/ServletContextExample</url-pattern>
27. </servlet-mapping>
28.</web-app>

<context-param>..</context-param>…

<context-param> is sub element of web-app, which is used to define initialization parameter in the application scope. The param-name , param-value are the sub element of context-param, these element used set param name and values.

8. Add the required code inside doGet() method.

ServletContextExample.java

01.package com.javatutorialscorner.servlet;
02. 
03.import java.io.IOException;
04.import java.io.PrintWriter;
05. 
06.import javax.servlet.ServletContext;
07.import javax.servlet.ServletException;
08.import javax.servlet.http.HttpServlet;
09.import javax.servlet.http.HttpServletRequest;
10.import javax.servlet.http.HttpServletResponse;
11. 
12./**
13. * Servlet implementation class ServletContextExample
14. */
15. 
16.public class ServletContextExample extends HttpServlet {
17. private static final long serialVersionUID = 1L;
18. 
19. /**
20.  * @see HttpServlet#HttpServlet()
21.  */
22. public ServletContextExample() {
23.  super();
24.  // TODO Auto-generated constructor stub
25. }
26. 
27. /**
28.  * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
29.  *      response)
30.  */
31. protected void doGet(HttpServletRequest request,
32.   HttpServletResponse response) throws ServletException, IOException {
33.  // TODO Auto-generated method stub
34. 
35.  ServletContext servletContext = getServletContext();
36.  String contextParam = servletContext.getInitParameter("dbname");
37.  response.setContentType("text/html");
38.  PrintWriter writer = response.getWriter();
39.  writer.write("<!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" \"http://www.w3.org/TR/html4/loose.dtd\">\n"
40.    + "<html><head><meta http-equiv=\"Content-Type\" content=\"text/html; charset=ISO-8859-1\"><title>Java Tutorials Corner - Servlet - Servlet Context Example</title>"
41.    + "</head><body><h1>Java Tutorials Corner - Servlet - Servlet Context Example</h1><table><tr>"
42.    + "<td> Init Param : </td><td>"
43.    + contextParam
44.    + "</td></tr></table></body></html>");
45. }
46. 
47. /**
48.  * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
49.  *      response)
50.  */
51. protected void doPost(HttpServletRequest request,
52.   HttpServletResponse response) throws ServletException, IOException {
53.  // TODO Auto-generated method stub
54. }
55. 
56.}

9. Now save and Run the servlet, Run As –> Run on Server – Select your web Server to run the servlet. ( see How to configure tomcat in eclipse) 
http://www.javatutorialcorner.com/2014/03/how-to-configure-tomcat-in-eclipse.html

10.call the URL which is mapped in web.xml.

http://localhost:8080/ServletExample/ServletContextExample

Output
image

Shop and help us

Flipkart Offer Snapdeal offer Amazon.in offer Amazon.com offer

Related Posts:

  • Servlet – Request Dispatcher forward In this tutorials we are going to see about Servlet Request Dispatcher forward with example program. void forward(ServletRequest request,ServletResponse response)throws ServletException,java.io.IOException Forwards a reques… Read More
  • Servlet - HTTP Status Codes In this tutorial we are going to see about HTTP status code with Servlet example program. See more about Http Status code click here - Http Status code in Detail (HTTP 1.1 Status code). List of status codes available in Http… Read More
  • Servlet - Hello World Sevlet using @WebServlet Annotation In this tutorial we are going to see about Hello World Servlet  program using Servlet 3 @WebServlet Annotation. public @interface WebServlet Annotation used to declare a servlet. This annotation is processed by the c… Read More
  • Servlet – SendRedirect with example In this tutorial we are going to see sendRedirect in servlet with example program. Send Redirect void sendRedirect(java.lang.String location) throws java.io.IOException Sends a temporary redirect response to the client usi… Read More
  • Servlet – set Header values in Response In this tutorial we are going to see how to set header information in servlet response with example program. Click here to read more about HTTP/1.1 Header param with Definitions List of Response Headers Header … Read More
  • Blogger Comments
  • Facebook Comments
  • Disqus Comments

0 comments:

Post a Comment

Item Reviewed: Servlet – ServletContext Interface Rating: 5 Reviewed By: eHowToNow