这是一段我在servlet中写的程序:
                  IPositionDAO positionDAO=new IPositionDAOImpl();
String selectValue="";
selectValue=request.getParameter("selectValue").trim();//这里也有点问题nullPointerException
System.out.println(selectValue);
List<Position> list=null; 
Position p=null;
if(selectValue.equals("")){ 
list=positionDAO.findAll();
}else{
p=positionDAO.findById(selectValue);
                        //下面这行能找到相应的值
System.out.println("SelServlet中的测试: "+p.getPostName()+"  "+p.getPostDept());
list.add(p);//运行时提示说我这里不对,

解决方案 »

  1.   

    你的list没有初始化List<Position> list=null;  
    改为
    List<Position> list=new ArrayList();  
      

  2.   

    selectValue作一下判断,应该返回是一个nullelse的}在哪list.add(p);这行到底是因为运行了positionDAO.findAll();还是没运行,结果list指向其实是一个null呢
      

  3.   

    是这样的。改过来之后list.add(p)就没问题了。
    selectValue=request.getParameter("selectValue").trim();//这里也有点问题nullPointerException    selectVlue 在不传送值过来是才会出现这个问题。怎么处理好
      

  4.   

    System.out.println(selectValue);//我把这行取消了,好像就行了,谢谢各位
      

  5.   

    你好,楼主!
    你的List 变量没有实例化,肯定会报NullPointerException的啊!
      

  6.   

    个人觉得
    String selectValue="";
    selectValue=request.getParameter("selectValue").trim();getParameter("selectValue")中的selectValue指代的是上面定义的那个String selectValue,而定义时候对他的赋值是空,所以getParameter("selectValue").trim()之后的值为空。request之后会出现空指针异常