code: @Override
    public Date getDateCellValue() {
      if(getCellType() == CellType.STRING){
        throw new IllegalStateException("Cell type cannot be CELL_TYPE_STRING");
      }
      return rawContents == null ? null : HSSFDateUtil.getJavaDate(getNumericCellValue(), use1904Dates);
    }
docs: Get the value of the cell as a date. For strings we throw an exception. For
  blank cells we return a null.
  
  @return the value of the cell as a date
  @throws IllegalStateException if the cell type returned by {@link #getCellType()} is CELL_TYPE_STRING
  @throws NumberFormatException if the cell value isn't a parsable <code>double</code>.