title: Apache POI getRow() returns null and .createRow fails
body: <p>I have the following problem using Apache POI v3.12:
  I need to use a XLSX file with 49 rows [0..48] as a template, fill it's cells with data and write it out as a different file, so I can reuse the template again. What I am doing is approximately this:</p>
  
  <pre><code>XSSFWorkbook wbk_template = new XSSFWorkbook(new FileInputStream    (f_wbk_template));
  SXSSFWorkbook wbk = new SXSSFWorkbook(wbk_template, 50, true);
  
  Sheet sheet = wbk.getSheet(STR_SHEET_NAME);
  </code></pre>
  
  <p>/ later on/</p>
  
  <pre><code>Row row = sheet.getRow(rownum);
  if (null == row) {
      row = sheet.createRow(rownum);
  }
  </code></pre>
  
  <p>Upon debugging it turns out that getRow() returns null, but the attempt to .createRow() fails with:</p>
  
  <pre><code>java.lang.IllegalArgumentException: Attempting to write a row[2] in the range [0,48] that is already written to disk.
      at org.apache.poi.xssf.streaming.SXSSFSheet.createRow(SXSSFSheet.java:122)
  ...
  </code></pre>
  
  <p>am I missing something here? As far as I have read in the Apache docs and forums, I need to createRow() if getRow() returns null. The sheet does not contain any rows according to .getPhysicalRows(), .getFirstRowNum() and .getLastRowNum()</p>
  
  <p>Thanks.</p>