Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Работа над ошибкой / 7 сообщений из 7, страница 1 из 1
24.07.2015, 17:30
    #39015695
mixon21
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа над ошибкой
Добрый день всем.
Ребята подскажите не могу справиться с ошибкой.


вот мой класс
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
import java.util.ArrayList;
import java.io.FileInputStream;
import java.io.IOException;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;

/**
 *
 * @author
 */
public class Parsing_Adress_Firm implements IParsingAdresSFirm{

    private ArrayList<String> listAdressFirm;
    private FileInputStream fis;
    
    public Parsing_Adress_Firm(){
        listAdressFirm=new ArrayList<>();
    }
  
    public void ParsingAdressCountry(String firm) {
        try {
        int index=0;
        String strfis="";
    switch(firm){
        case "ANP":
            strfis="E:\\Java\\Програмы\\Price1\\adresa_azs_ANP.xls";
            index=4;
            break;
        case "Shell":
            strfis="E:\\Java\\Програмы\\Price1\\adresa_azs_SHELL.xls";
            index=4;
            break;
        case "KLO":
            strfis="E:\\Java\\Програмы\\Price1\\adresa_azs_KLO.xls";
            index=3;
            break;
            default:System.out.println("Error");          
    }
        
            fis = new FileInputStream(strfis);
     Workbook wb = new HSSFWorkbook(fis);
     Sheet sheet=wb.getSheetAt(0);
     for(int i=2;i<sheet.getLastRowNum();i++){

     listAdressFirm.add(sheet.getRow(i).getCell(index).toString());
     }
     for(int i=0;i<listAdressFirm.size();i++){
        System.out.println("List "+listAdressFirm.get(i));
     }
        } catch (IOException ex) {
        }      
        
    }    
}



при вызове метода ParsingAdressCountry(String firm) выскакивает ошибка


{
Exception in thread "JavaFX Application Thread" java.lang.NullPointerException
at price1.Parsing_Adress_Firm.ParsingAdressCountry(Parsing_Adress_Firm.java:53)
at price1.FXMLDocumentController$3.handle(FXMLDocumentController.java:178)
at com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(CompositeEventHandler.java:86)
at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:238)
at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:191)
at com.sun.javafx.event.CompositeEventDispatcher.dispatchBubblingEvent(CompositeEventDispatcher.java:59)
at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:58)
at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56)
at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56)
at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
at com.sun.javafx.event.EventUtil.fireEventImpl(EventUtil.java:74)
at com.sun.javafx.event.EventUtil.fireEvent(EventUtil.java:54)
at javafx.event.Event.fireEvent(Event.java:198)
at javafx.scene.Scene$MouseHandler.process(Scene.java:3758)
at javafx.scene.Scene$MouseHandler.access$1500(Scene.java:3486)
at javafx.scene.Scene.impl_processMouseEvent(Scene.java:1762)
at javafx.scene.Scene$ScenePeerListener.mouseEvent(Scene.java:2495)
at com.sun.javafx.tk.quantum.GlassViewEventHandler$MouseEventNotification.run(GlassViewEventHandler.java:350)
at com.sun.javafx.tk.quantum.GlassViewEventHandler$MouseEventNotification.run(GlassViewEventHandler.java:275)
at java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.tk.quantum.GlassViewEventHandler.lambda$handleMouseEvent$350(GlassViewEventHandler.java:385)
at com.sun.javafx.tk.quantum.GlassViewEventHandler$$Lambda$203/202522089.get(Unknown Source)
at com.sun.javafx.tk.quantum.QuantumToolkit.runWithoutRenderLock(QuantumToolkit.java:404)
at com.sun.javafx.tk.quantum.GlassViewEventHandler.handleMouseEvent(GlassViewEventHandler.java:384)
at com.sun.glass.ui.View.handleMouseEvent(View.java:555)
at com.sun.glass.ui.View.notifyMouse(View.java:927)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.lambda$null$145(WinApplication.java:101)
at com.sun.glass.ui.win.WinApplication$$Lambda$36/1963387170.run(Unknown Source)
at java.lang.Thread.run(Thread.java:745)
}

подскажите в чем проблема.
...
Рейтинг: 0 / 0
24.07.2015, 17:39
    #39015700
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа над ошибкой
Ошибка и код не совпадают. В 53й строке ничего нет.
...
Рейтинг: 0 / 0
24.07.2015, 17:42
    #39015702
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа над ошибкой
getRow и getCell могут вернуть null. Читайте документацию.
Старайтесь не использовать цепочку вызовов вроде
sheet.getRow(i).getCell(index).toString()
Заведите переменные для Row и Cell.
Такие цепочки имеет смысл использовать только в случае Builder паттерна.
...
Рейтинг: 0 / 0
24.07.2015, 17:43
    #39015703
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа над ошибкой
...
Рейтинг: 0 / 0
24.07.2015, 17:46
    #39015709
mixon21
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа над ошибкой
BlazkowiczОшибка и код не совпадают. В 53й строке ничего нет.

в 53 строке добавление в arraylist
Код: java
1.
listAdressFirm.add(sheet.getRow(i).getCell(index).toString());



походу я неправильно наполняю arraylist


Подскажите пожалуйста как правильно добавить елементы в arraylist.
...
Рейтинг: 0 / 0
24.07.2015, 17:48
    #39015711
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа над ошибкой
mixon21,

Код: java
1.
2.
3.
4.
5.
6.
7.
  Row row = sheet.getRow(i);
  if(row != null){
     Cell cell = row.getCell(index);
     if(cell != null){
        list.add(cell.toString());
     }
  }
...
Рейтинг: 0 / 0
24.07.2015, 17:55
    #39015718
mixon21
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа над ошибкой
Blazkowicz, Спасибо
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Работа над ошибкой / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]