Hi, I am currently trying to convert a Excel xlsx file into xml.
I've gone though and done some custom mapping according to this example. http://openxmldeveloper.org/articles/2268.aspx Yet when I run it through my code I get Exception in thread "main" java.lang.NullPointerException at org.apache.poi.xssf.extractor.XSSFExportToXml.indexOfElementInComplexType(XSSFExportToXml.java:431) at org.apache.poi.xssf.extractor.XSSFExportToXml.compare(XSSFExportToXml.java:412) at org.apache.poi.xssf.extractor.XSSFExportToXml.compare(XSSFExportToXml.java:78) at java.util.Arrays.mergeSort(Arrays.java:1284) at java.util.Arrays.sort(Arrays.java:1223) at java.util.Collections.sort(Collections.java:159) at org.apache.poi.xssf.extractor.XSSFExportToXml.exportToXML(XSSFExportToXml.java:158) at org.apache.poi.xssf.extractor.XSSFExportToXml.exportToXML(XSSFExportToXml.java:102) at com.poi.sample.XSFFExportSample.main(XSFFExportSample.java:30) I was however able to run the CustomXMLMapping sample that I got off SVN. I'm wondering if I'm not mapping things correctly in the Excel spreadsheet but when I verify if the spreadsheet can be exported to XML it gives me no problems. I'm also able to click Save As XML and have no issue. I uploaded the project as a zip file in case anyone wants to look at it. Here is the code I'm using public static void main(String[] args) { try { InputStream inp = new FileInputStream("Book1.xlsx"); XSSFWorkbook wb = new XSSFWorkbook(inp); for(XSSFMap map : wb.getCustomXMLMappings()) { XSSFExportToXml exporter = new XSSFExportToXml(map); OutputStream writer = new FileOutputStream("outxml.xml"); exporter.exportToXML(writer, false); } } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (SAXException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (ParserConfigurationException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (TransformerException e) { // TODO Auto-generated catch block e.printStackTrace(); } } Here is the schema I'm using for testing <complexType name="GolfClubType"> <complexContent> <extension base="tns:GolfManufacturerType"> <sequence> <element name="ClubKind" type="tns:ClubKindType"></element> <element name="Loft" type="string"></element> <element name="Shaft" type="tns:ShaftType"></element> </sequence> </extension> </complexContent> </complexType> <simpleType name="ClubKindType"> <restriction base="string"> <enumeration value="Driver"></enumeration> <enumeration value="Wood"></enumeration> <enumeration value="Iron"></enumeration> <enumeration value="Wedge"></enumeration> <enumeration value="Putter"></enumeration> </restriction> </simpleType> <simpleType name="ShaftType"> <restriction base="string"> <enumeration value="Regular"></enumeration> <enumeration value="Stiff"></enumeration> </restriction> </simpleType> If anyone wants I can upload the spreadsheet as well. Any ideas on how to better convert xlsx file to XML? -- View this message in context: http://old.nabble.com/XSSFExportToXML-help-trying-to-export-xlsx-to-xml-tp27278396p27278396.html Sent from the POI - User mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
