Respuesta :

 Este es un método que te lee los datos del archivo exel y te retorna la información dentro de un vector.
__________________________________________________ __________________________________________________ ______________________________
/**
* Método que se encarga de leer los datos de un archivo en formato excel
* @param file Archivo que se va a proceder a leer
* @return Vector que contiene la informacion del archivo
*/
public Vector leeArchivo(File file){
Vector informacionArchivo = new Vector();
POIFSFileSystem poifsFileSystem = null;
try {
poifsFileSystem = new POIFSFileSystem(new FileInputStream(file));
} catch (FileNotFoundException ex) {
ex.printStackTrace();
} catch (IOException ex) {
ex.printStackTrace();
}
HSSFWorkbook hssfWorkbook = null;
try {
hssfWorkbook = new HSSFWorkbook(poifsFileSystem);
} catch (IOException ex) {
ex.printStackTrace();
}
HSSFSheet hssfSheet = hssfWorkbook.getSheetAt(0);
Iterator iterator = hssfSheet.rowIterator();
// Recorro datos de fila en fila
while(iterator.hasNext()){
HSSFRow hssfRow = (HSSFRow)iterator.next();
Iterator iteratorAuxiliar = hssfRow.cellIterator();
Vector informacionFila = new Vector();
//Me barro todos los elementos de una fila
for(short i = hssfRow.getFirstCellNum(); i < hssfRow.getLastCellNum(); i++){
HSSFCell hssfCell = hssfRow.getCell(i);
if(hssfCell != null){
switch(hssfCell.getCellType()){
case HSSFCell.CELL_TYPE_BLANK: informacionFila.add(""); break;
case HSSFCell.CELL_TYPE_BOOLEAN: informacionFila.add(hssfCell.getBooleanCellValue() ); break;
case HSSFCell.CELL_TYPE_FORMULA: informacionFila.add(hssfCell.getStringCellValue()) ; break;
case HSSFCell.CELL_TYPE_NUMERIC: informacionFila.add(hssfCell.getNumericCellValue() ); break;
case HSSFCell.CELL_TYPE_STRING: informacionFila.add(hssfCell.getStringCellValue()) ; break;
default:
}
}
}
informacionArchivo.add(informacionFila);
}
return informacionArchivo;
}
__________________________________________________ 
Espero que te sirva con este método he logrado leer datos de un archivo de 12 megas.