Deepak A L <[EMAIL PROTECTED]> writes: > package dd.cc; > > import javax.servlet.*; > import javax.servlet.http.*; > import java.io.*; > import java.util.*; > import java.lang.*; > > public class ReadParams extends HttpServlet{ > > public void init() throws ServletException{ > ServletConfig config = getServletConfig(); > > //demonstrating the usage of InitParameterNames > getServletContext().log(" Init method called "); > //get the value of a initialization parameter name="ok" > String param = config.getInitParameter("ok"); > getServletContext().log("config ::"+config); > getServletContext().log("config.getInitParameter(\"ok\") :: > "+config.getInitParameter("ok")); > getServletContext().log("Initialization Parameter :: "+param); > > //get a enumeration of all Initialization Parameter Names > > Enumeration enum = config.getInitParameterNames(); > for(;enum.hasMoreElements();){ > //get the name of Init Parameter > String name = (String)enum.nextElement(); > //get the value of Init Parameter name > String value = config.getInitParameter(name); > getServletContext().log("********Enumeration example***********"); > getServletContext().log(" Parameter Name :: "+name); > getServletContext().log(" Parameter Value :: "+value); > getServletContext().log("**************************************"); > } > > //Initialization Parameter can be retrieved using getServletContext() > method too. > String var = getServletContext().getInitParameter("Global"); > getServletContext().log("The Value of init param via getServletContext() > method is "+var); > //out.println("<b>The Value of Init Parameter is </b>"+param); > > } > public void doPost(HttpServletRequest request, HttpServletResponse > response) > throws ServletException, IOException{ > doGet(request,response); > } > > public void doGet(HttpServletRequest request,HttpServletResponse > response)throws ServletException, IOException { > > PrintWriter out = response.getWriter(); > response.setContentType("text/html"); > } > } > > with a entry being as below in web.xml file > > <servlet> > <servlet-name>ReadParams</servlet-name> > <servlet-class>com.sysarris.register.action.ReadParams</servlet-class> > </servlet> > <servlet-mapping> > <servlet-name>ReadParams</servlet-name> > <url-pattern>/ReadParams</url-pattern> > </servlet-mapping> > <init-param> > <param-name>ok</param-name> > <param-value>Sysarris</param-value> > </init-param> > <init-param> > <param-name>Global</param-name> > <param-value>Around the World in 80 days </param-value> > </init-param> > > when i exceute the servlet i get the following values as null even though > there is a entry in web.xml > > 10/26 10:30:26 user ReadParams: init > 10/26 10:30:26 user Init method called > 10/26 10:30:26 user config ::[EMAIL PROTECTED] > 10/26 10:30:26 user config.getInitParameter("ok") :: null > 10/26 10:30:26 user Initialization Parameter :: null > 10/26 10:30:26 user The Value of init param via getServletContext() method > is null > > help needed
Your init-param elements are not declared inside the servlet element. You can either use init-params or context-params. Here is what context params look like: <servlet> <servlet-name>ReadParams</servlet-name> <servlet-class>com.sysarris.register.action.ReadParams</servlet-class> </servlet> <servlet-mapping> <servlet-name>ReadParams</servlet-name> <url-pattern>/ReadParams</url-pattern> </servlet-mapping> <context-param> <param-name>ok</param-name> <param-value>Sysarris</param-value> </context-param> <context-param> <param-name>Global</param-name> <param-value>Around the World in 80 days </param-value> </context-param> And the code to read the parameters: public void init () { String globalValue = getServletContext().getInitParameter("Global"); } Or you can have parameters per-servlet: <servlet> <servlet-name>ReadParams</servlet-name> <servlet-class>com.sysarris.register.action.ReadParams</servlet-class> <init-param> <param-name>ok</param-name> <param-value>Sysarris</param-value> </init-param> <init-param> <param-name>Global</param-name> <param-value>Around the World in 80 days </param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>ReadParams</servlet-name> <url-pattern>/ReadParams</url-pattern> </servlet-mapping> And the code to read them: public void init () { String globalValue = getServletConfig().getInitParameter("Global"); } Use context-parameters for webapp variables and servlet init parameters for overrides and servlet specific features. -- Nic Ferrier http://www.tapsellferrier.co.uk ___________________________________________________________________________ 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