Excepción de java.lang.outofmemory al leer el archivo de Excel (xlsx) usando POI

Estoy desarrollando una aplicación web que lee datos de un archivo excel (xlsx). Estoy usando POI para leer la hoja de Excel. El problema es que cuando intento leer el archivo de Excel, el servidor produce el siguiente error:

El archivo de Excel que estoy tratando de leer tiene un tamaño de casi 80 MB. Alguna solución a este problema?

En realidad, el usuario está cargando el archivo y la aplicación después de guardar el archivo en el disco, intente leer el archivo. El fragmento de código que estoy usando para la prueba es:

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

Respuestas a la pregunta(6)

Su respuesta a la pregunta