at javax.servlet.GenericServlet.getServletContext(GenericServlet.java:123)

问题: 
写servlet时当在doGet/doPost方法中要获取ServletContext对象时,(比如: 
  ServletContext context=getServletContext(); 
       out.print(context.getServerInfo()); 
)时而会出现下面的异常提示,有时可以有时又不行,找了半天问题总不得要领。 
java.lang.NullPointerException 
javax.servlet.GenericServlet.getServletContext(GenericServlet.java:159) 
servletdemo.FirstServlet.process(FirstServlet.java:51) 

在网上搜了很久终于在http://forum.java.sun.com/thread.jspa?threadID=558579&messageID=2742652文档提示下发现了问题所在 
原来我重写了init(ServletConfig),但第一行没有调用super.init(config);就是这导致了错误!父类的init(ServletConfig)有处理获取ServletContext对象的引用,在doGet()等方法中才能够通过getServletContext()方法获取到SeverletContext对象!! 
public void init(ServletConfig config) throws ServletException{ 
        super.init(config); 
        。。。。 
}

猜你喜欢

转载自blog.csdn.net/yvhkyiu/article/details/72812115