| Code: |
|
Dog Class: package Lstnr; public class Dog { private String breed; public Dog( String breed ) { this.breed = breed; } public String getBreed() { return breed; } } ListenerTester: package Lstnr; import javax.servlet.*; import javax.servlet.http.*; import java.io.*; public class ListenerTester extends HttpServlet { /** * */ private static final long serialVersionUID = 1L; public void doGet (HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { response.setContentType("text/html"); PrintWriter out = response.getWriter(); out.println("test context attributes set by listener<br>"); out.println("<br>"); Dog dog = (Dog) getServletContext().getAttribute("dog"); out.println("Dog’s breed is: " + dog.getBreed()); } } MyServletContextListener class: package Lstnr; import javax.servlet.ServletContext; import javax.servlet.ServletContextEvent; import javax.servlet.ServletContextListener; public class MyServletContextListener implements ServletContextListener { public void contextInitialized(ServletContextEvent event) { ServletContext sc = event.getServletContext(); String dogBreed = sc.getInitParameter("breed"); Dog d = new Dog(dogBreed); sc.setAttribute("dog", d); } public void contextDestroyed( ServletContextEvent event ) { // nothing to do here } } web.xml: <?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> <servlet> <servlet-name>ListenerTester</servlet-name> <servlet-class>Lstnr.ListenerTester</servlet-class> </servlet> <servlet-mapping> <servlet-name>ListenerTester</servlet-name> <url-pattern>/ListenTest.do</url-pattern> </servlet-mapping> <context-param> <param-name>breed</param-name> <param-value>Great Dane</param-value> </context-param> <listener> <listener-class>Lstnr.MyServletContextListener</listener-class> </listener> </web-app> |