我有一个MainServletContext
存储implements ServletContextListener
属性的
public void contextInitialized(ServletContextEvent sce) {
ServletContext servletContext = sce.getServletContext();
// successfully get a non-null stockMap
servletContext.setAttribute("stockMap", stockMap);
}
我在其中声明了它web.xml
,它看起来像
<listener>
<listener-class>controller.MainServletContext</listener-class>
</listener>
现在我想stockMap
从 servlet 类中取回它
Map<SimpleStock, Stock> stockMap = (Map<SimpleStock, Stock>) getServletContext().getAttribute("stockMap");
我有一个NullPointerException
. 请问是不是少了一个步骤?
谢谢。
堆栈跟踪
java.lang.NullPointerException
javax.servlet.GenericServlet.getServletContext(GenericServlet.java:125)
controller.TopTenServlet.service(TopTenServlet.java:91)
javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
我的 Servlet 初始化方法
@Override
public void init(ServletConfig config) throws ServletException {
this.servletConfig = config;
}