2011-04-03 88 views
0

我有一个购物的servlet我设计一个相当恼人的问题。我不断收到一个空指针异常,当我尝试建立一个订单对象是这样的:空指针异常的Servlet中

  int ccn=customer.getCcn(); 
      OrderList.Order order=null; 
    ResultSet set=helper.selectOrder(custId); 
    try{ 
     while (set.next()){ 
      orderno=set.getInt(1); 
      orderDate=set.getString(2); 
      shipDate=set.getString(3); 
      custId=set.getString(4); 
      order=list.new Order(orderno,custId,ccn); 
      list.addOrder(order); 

     } 
     set.close();} 
     catch(Exception e){ 
      System.out.println(e.getMessage()); 
     } 

但如果我这样做,异常消失了......但我的列表已满重复的。

  int ccn=customer.getCcn(); 
    ResultSet set=helper.selectOrder(custId); 
    try{ 
     while (set.next()){ 
      orderno=set.getInt(1); 
      orderDate=set.getString(2); 
      shipDate=set.getString(3); 
      custId=set.getString(4); 
     } 
     set.close();} 
        OrderList.Order order=list.new Order(orderno,custId,ccn); 
        list.addOrder(order); 
     catch(Exception e){ 
      System.out.println(e.getMessage()); 
     } 

任何帮助?

+1

您可以提供这行让你异常和多一点的上下文到代码中,如列表定义的位置? – Gennadiy 2011-04-03 18:39:50

+0

我们不能帮你没有** **栈跟踪。 – 2011-04-03 18:43:59

+0

@kenju请停止做不相关的修改 – rpax 2015-09-03 09:41:58

回答

0

这是一个粗糙的,没有受过教育的(如果可以说)的猜测,所以这里去。

如果list绝对不为空,那么最简单的方法是直接在列表中添加新订单,像这样:

while (set.next()){ 
    orderno=set.getInt(1); 
    orderDate=set.getString(2); 
    shipDate=set.getString(3); 
    custId=set.getString(4); 
    list.addOrder(list.new Order(orderno,custId,ccn)); 
}