exceção java.lang.outofmemory ao ler o arquivo excel (xlsx) usando o POI

Estou desenvolvendo uma aplicação web que lê dados do arquivo excel (xlsx). Estou usando o POI para ler a planilha do excel. O problema é quando eu tento ler o arquivo do Excel, o servidor gera o seguinte erro:

O arquivo excel que estou tentando ler tem tamanho de quase 80 MB. Alguma solução para este problema?

Na verdade, o usuário está fazendo o upload do arquivo e do aplicativo depois de salvar o arquivo no disco para tentar ler o arquivo. O trecho de código que estou usando para teste é:

 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(7)

yourAnswerToTheQuestion