SE452: Using init parameters [23/24] ![]() ![]() ![]() |
Enhancements to the HelloServlet servlet.
Takes two initialization parameters
It is placed in a package named se452.week2
package se452.week2;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloServlet3 extends HttpServlet {
protected String bgcolor;
protected String fgcolor;
public void init() {
bgcolor = getInitParameter("bgcolor");
fgcolor = getInitParameter("fgcolor");
}
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("<html>");
out.println("<head><title> Hello </title></head>");
if (bgcolor != null) {
out.println("<body bgcolor=\"" +
bgcolor + "\">");
} else {
out.println("<body>");
}
if (fgcolor != null) {
out.println("<h1><font color=\"" + fgcolor + "\"> Hello! </font></h1>");
} else {
out.println("<h1> Hello! </h1>");
}
out.println("<br>");
out.println("The request URI is <i>" + request.getRequestURI() + "</i>");
out.println("</body>");
out.println("</html>");
}
}
Deploy HelloServlet again
New, in web.xml:
<servlet>
<servlet-name>hello</servlet-name>
<servlet-class>se452.week2.HelloServlet3</servlet-class>
<init-param>
<param-name>bgcolor</param-name>
<param-value>white</param-value>
</init-param>
<init-param>
<param-name>fgcolor</param-name>
<param-value>green</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>hello-green</servlet-name>
<url-pattern>/green/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>hello-red</servlet-name>
<url-pattern>/red</url-pattern>
</servlet-mapping>