2013-10-11 6 views
0

У меня есть код ниже в моем классе java.Как обрабатывать исключение nullpointer?

/* 
* To change this template, choose Tools | Templates 
* and open the template in the editor. 
*/ 
package webservice; 

import java.util.Iterator; 
import java.util.List; 


public class Webservice { 

    /** 
    * @param args the command line arguments 
    */ 
    public static void main(String[] args) { 
     // TODO code application logic here 
     ArrayOfString aar = new ArrayOfString(); 
     aar.getString().add("1025976002"); 
     aar.getString().add("1026020904"); 
     aar.getString().add("1026020704"); 
     aar.getString().add("1026026201"); 
     aar.getString().add("1026036901"); 
     aar.getString().add(""); 
     ArrayOfStatusContainer status = getStatusList(aar); 
     List<StatusContainer> li = status.getStatusContainer(); 
     Iterator litr=li.listIterator();  
     // System.out.println("Elements in forward directiton"); 
     while(litr.hasNext()){ 
      StatusContainer test = (StatusContainer)litr.next(); 
      System.out.println(test.getStatus());  
     } 

    } 

    private static ArrayOfStatusContainer getStatusList(webservice.ArrayOfString keys) { 
     webservice.AdStatusWS service = new webservice.AdStatusWS(); 
     webservice.AdStatusWSSoap port = service.getAdStatusWSSoap(); 
     return port.getStatusList(keys); 

    } 
} 

Когда я вхожу в пустую строку или вводю повторяющееся строковое значение, я получаю исключение nullpointer. Я пытался какое-то время, но пока не нашел решения. Я добавил скриншот исключения ниже. Стек след ниже:

Sent 
Booked 
Multiple Errors 
Exception in thread "main" java.lang.NullPointerException 
In QC 
Need correction client 
    at webservice.Webservice.main(Webservice.java:34) 
Java Result: 1 
BUILD SUCCESSFUL (total time: 1 second) 

enter image description here

+2

Используйте отладчик, пройдите через свой код, определите, откуда приходит ссылка «null», и исправьте его, если он недействителен. –

+0

Stack следы пожалуйста? Изображение нечеткое. –

+2

Что это, отладка для муравьев? – nhgrif

ответ

3

Консоль говорит, что исключение NullPointer было бросить в строке 34, что возможные средства, которые проверяют переменная равна нулю, и вы пытаетесь получить доступ к свойству объекта null подтвердите null сначала.

while(litr.hasNext()){ 
     StatusContainer test = (StatusContainer)litr.next(); 
     if(test != null) 
      System.out.println(test.getStatus());  
    } 
0

Убедитесь, что вы всегда добавляете нулевые проверки перед доступом к свойствам объекта.

+0

Sure Sachin. Это будет иметь в виду. – Newbee

Смежные вопросы