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 [EMAIL PROTECTED] and include in the body
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