Java Mailing List Archive

http://www.junlu.com/

Home » Home (12/2007) » Servlet Interest »

Web.xml file location for Servlet initialization.

Niketu Parekh

2003-08-24

Replies:

Hi,

I am new to JavaServlets. Learning it through the examples. I am trying to
understand how servlet initialization works?
I m using the HttpServlet.init(ServletConfig conf) method to read the
web.xml file and set few parameters using ServletConfig.getInitParameter
("") method.

As per the documentation, the web.xml file should be in \WEB-INF\
directory. But my source code is not working. I dont get the correct
parameter values using ServletConfig.getInitParameter(). Below is the
source code. I would really appreciate if someone can help me solve this
problem.

install_dir = C:\Apache\Tomcar4.1\
examples_dir = install_dir\webapps\ROOT\WEB-
INF\classes\HelloWorldExample.java
web.xml file location - install_dir\ROOT\WEB-INF\web.xml

Thanks
- Niketu

SourceCode HelloWorldExample.java -
=================================
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class HelloWorldExample extends HttpServlet {
private String message;
private String defaultmessage = "No Message";
private int repeats = 1;

public void init(ServletConfig config) throws ServletException {
super.init(config);
message = config.getInitParameter("message");
if(message == null)
 message = defaultmessage;

try {
 String repeatstring = config.getInitParameter
("repeats");
 repeats = Integer.parseInt(repeatstring);
} catch (NumberFormatException ne) {
}
}

public void doGet(HttpServletRequest req, HttpServletResponse
resp) throws ServletException, IOException {
resp.setContentType("text/html");
PrintWriter out = resp.getWriter();
String title = "The ShowMessage Servlet";
out.println(ServletUtilities.headWithTitle(title) +
  "<BODY BGCOLOR=\"#FDF5E6\">\n" +
  "<H1 ALIGN=CENTER>" + title + "</H1>");

for(int i=0; i < repeats; i++)
 out.println(message + "<BR>");

out.println("</BODY></HTML>");
}
}

SourceCode ServletUtilities.java -
================================
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class ServletUtilities {

public static final String docType = "<!DOCTYPE HTML PUBLIC \"-
//W3C//DTD HTML 4.0 " + "Transitional//EN\">";

public static String headWithTitle (String title) {
return (docType + "\n" +
"<HTML>\n" +
"<HEAD><TITLE>" + title + "</TITLE></HEAD>\n");
}
}

Web.xml file -
============
<?xml version="1.0" encoding="ISO-8859-1"?>

<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web
Application2.2//EN" "http://java.sun.com/j2ee/dtds/web-app_2.2.dtd">

<web-app>
<servlet>
<servlet-name>
 ShowMsg
</servlet-name>

<servlet-class>
 coreservlets.ShowMessage
</servlet-class>

<init-param>
 <param-name>
  message
 </param-name>
 <param-value>
  Shibboleth
 </param-value>
</init-param>

<init-param>
 <param-name>
  repeats
 </param-name>
 <param-value>
  5
 </param-value>
</init-param>
</servlet>
</web-app>

___________________________________________________________________________
To unsubscribe, send email to listserv@(protected)
of the message "signoff SERVLET-INTEREST".

Archives: http://archives.java.sun.com/archives/servlet-interest.html
Resources: http://java.sun.com/products/servlet/external-resources.html
LISTSERV Help: http://www.lsoft.com/manuals/user/user.html


©2008 junlu.com - Jax Systems, LLC, U.S.A.