wyjątek java.lang.outofmemory podczas odczytywania pliku Excel (xlsx) przy użyciu POI

Zajmuję się tworzeniem aplikacji internetowej, która odczytuje dane z pliku Excela (xlsx). Używam POI do czytania arkusza Excela. Problem polega na tym, że próbuję odczytać plik Excela, serwer zgłasza następujący błąd:

Plik programu Excel, który próbuję odczytać, ma rozmiar prawie 80 MB. Jakieś rozwiązanie tego problemu?

Właściwie użytkownik przesyła plik i aplikacja po zapisaniu pliku na dysku spróbuje odczytać plik. Fragment kodu, którego używam do testowania, to:

 File savedFile = new File(file_path);

FileInputStream fis = null;
            try {

                fis = new FileInputStream(savedFile);
                XSSFWorkbook xWorkbook = new XSSFWorkbook(fis);
                XSSFSheet xSheet = xWorkbook.getSheetAt(5);

                Iterator rows = xSheet.rowIterator();
                while (rows.hasNext()) {
                    XSSFRow row = (XSSFRow) rows.next();
                    Iterator cells = row.cellIterator();

                    List data = new ArrayList();
                    while (cells.hasNext()) {
                        XSSFCell cell = (XSSFCell) cells.next();
                        System.out.println(cell.getStringCellValue());
                        data.add(cell);
                    }

                }
            } catch (IOException e) {
                e.printStackTrace();
            } 

questionAnswers(6)

yourAnswerToTheQuestion