title: NoSuchMethodError in main thread while reading xlsx using apache poi
body: <p>my code is </p>
  
  <pre><code>[...]
  import org.apache.poi.poifs.filesystem.POIFSFileSystem;
  import org.apache.poi.ss.usermodel.Workbook;
  import org.apache.poi.xssf.usermodel.XSSFSheet;
  import org.apache.poi.xssf.usermodel.XSSFWorkbook;
  import org.apache.poi.hssf.usermodel.HSSFCell;
  import org.apache.poi.hssf.usermodel.HSSFSheet;
  import org.apache.poi.hssf.usermodel.HSSFWorkbook;
  import org.apache.poi.hssf.usermodel.HSSFRow;
  
  public class ExcelRead {
  
      public static void main( String [] args ) {
          try {
  
                File excel = new File("Book1.xlsx");
                FileInputStream fis = new FileInputStream(excel);
                XSSFWorkbook book = new XSSFWorkbook(fis);
                XSSFSheet sheet = book.getSheetAt(0);
  
              Iterator rows = sheet.rowIterator(); 
              while( rows.hasNext() ) {   
                  HSSFRow row = (HSSFRow) rows.next();
                  System.out.println("\n");
                  Iterator cells = row.cellIterator();
                  while( cells.hasNext() ) {
  
                      HSSFCell cell = (HSSFCell) cells.next();
                      if(HSSFCell.CELL_TYPE_NUMERIC==cell.getCellType())
                      System.out.print( cell.getNumericCellValue()+"     " );
                      else
                      if(HSSFCell.CELL_TYPE_STRING==cell.getCellType())
                          System.out.print( cell.getStringCellValue()+"     " );
                      else
                          if(HSSFCell.CELL_TYPE_BOOLEAN==cell.getCellType())
                          System.out.print( cell.getBooleanCellValue()+"     " );
                          else
                              if(HSSFCell.CELL_TYPE_BLANK==cell.getCellType())
                                  System.out.print( "BLANK     " );
                                  else
                              System.out.print("Unknown cell type");
                  }
              }
          } catch ( IOException ex ) {
              ex.printStackTrace();
          }
      }
  }
  </code></pre>
  
  <p>the jars that i have added are </p>
  
  <ul>
  <li>poi-3.9.jar</li>
  <li>poi-ooxml-3.9.jar</li>
  <li>poi-ooxml-schemas-3.7.jar</li>
  <li>xmlbeans-2.3.0.jar</li>
  <li>dom4j-1.6.1.jar</li>
  </ul>
  
  <p>the exception is </p>
  
  <pre><code> Exception in thread "main" java.lang.NoSuchMethodError: javax.xml.stream.XMLEventFactory.newFactory()Ljavax/xml/stream/XMLEventFactory;
  
        at org.apache.poi.openxml4j.opc.internal.marshallers.PackagePropertiesMarshaller.&lt;clinit&gt;(PackagePropertiesMarshaller.java:45)
        at org.apache.poi.openxml4j.opc.OPCPackage.init(OPCPackage.java:161)
        at org.apache.poi.openxml4j.opc.OPCPackage.&lt;init&gt;(OPCPackage.java:141)
        at org.apache.poi.openxml4j.opc.Package.&lt;init&gt;(Package.java:37)
        at org.apache.poi.openxml4j.opc.ZipPackage.&lt;init&gt;(ZipPackage.java:87)
        at org.apache.poi.openxml4j.opc.OPCPackage.open(OPCPackage.java:272)
        at org.apache.poi.util.PackageHelper.open(PackageHelper.java:37)
        at org.apache.poi.xssf.usermodel.XSSFWorkbook.&lt;init&gt;(XSSFWorkbook.java:254)
        at com.symplocus.ExcelRead.main(ExcelRead.java:26)
  </code></pre>