1

尝试将 init 参数名称添加到 init(ServletConfig) 方法中的列表。

public void init(ServletConfig sc){
    try {
        super.init(sc);
        Enumeration<String> e= sc.getInitParameterNames();
        while(e.hasMoreElements()){
            list.add(e.nextElement());
        }
    } catch (ServletException e1) {
        e1.printStackTrace();
    }
}

我在使用此列表时收到NullPointerException,因为e.hasMoreElement() 返回 false。我很确定我已经在 web.xml 文件中正确添加了 init 参数。出了什么问题?请指教。

4

1 回答 1

4

我认为你没有对象intialized。对象为空listlist

更改代码列表:

public void init(ServletConfig sc){
   try {
      super.init(sc);
      list = new ArrrayList<String>();
      Enumeration<String> e= sc.getInitParameterNames();
      while(e.hasMoreElements()){
         list.add(e.nextElement());
      }
   } catch (ServletException e1) {
    e1.printStackTrace();
   }
}
于 2012-06-21T08:50:10.513 回答