Hi, I'm experimenting with using annotations. I created a Servlet with annotations and then attempt to get the init parameters in the doGet() method, but I keep getting a null value when I use this.getServletConfig(). If I save the ServletConfig in an instance variable from the init() method it works as expected. Shouldn't the this.getServletConfig() return the configuration object instead of a null? What am I missing?
Here is a listing. The code is also attached. I've run it both with and without a web.xml file (just the root element when present). @WebServlet( name="myservlet", urlPatterns={"/"}, initParams={ @WebInitParam(name="name", value="Richard"), @WebInitParam(name="greeting", value="Hola") } ) public class TheServlet extends HttpServlet { ServletConfig myConfig; public void init(ServletConfig config) throws ServletException{ myConfig = config; } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // Set content type response.setContentType("text/plain"); // Get initialization parameters //ServletConfig config = this.getServletConfig(); //^^^^^^^^^^^^^^ The above returns null ^^^^^^^^ ServletConfig config = myConfig; //^^^^^^^The above works ^^^^^^^^ if(config != null){ String name = config.getInitParameter("name"); String greeting = config.getInitParameter("greeting"); response.getWriter().println(greeting + " " +name); }else{ response.getWriter().println("there is no config"); } } } Thanks in advance! Richard -- Richard Monson-Haefel https://twitter.com/rmonson https://www.linkedin.com/in/monsonhaefel/