How does your XML file look ?
Claus Nielsen "Mitchell, Scott(LIT)" To: [EMAIL PROTECTED] <S.Mitchell@Liberty cc: -IT.co.uk> Subject: Running fop from Java 03-01-2002 11:32 Please respond to fop-dev Hi, I am trying to use jox to take a java bean and create an xml file. With this file, I use fop to convert to a pdf. I get the following error when running the code. Input XSL; Line 1; Column 1 XSL Error: Could not parse Input XML document! XSL Error: SAX Exception org.apache.xalan.xslt.XSLProcessorException: The markup in the document preceding the root element must be well-formed. at org.apache.xalan.xslt.XSLTEngineImpl.error(XSLTEngineImpl.java:1630) at org.apache.xalan.xslt.XSLTEngineImpl.getSourceTreeFromInput(XSLTEngineImpl.j ava:852) at org.apache.xalan.xslt.XSLTEngineImpl.process(XSLTEngineImpl.java:552) at com.wutka.jox.test.TestSer.main(TestSer.java:82) This is the code, the red line is where the error occurs. public class TestSer { public static void main(String[] args) { try { TestBean b = new TestBean(); b.setFoo(5); b.setBar("This is the bar value"); b.setThingies(new String[] { "Moe", "Larry", "Curly", "Shemp", "Curly Joe" }); TestSubbean sub = new TestSubbean(); sub.setName("Mark"); sub.setAge(35); b.setSub(sub); FileOutputStream fileOut = new FileOutputStream("f:/ProgramFiles/jox/source/com/wutka/jox/test/bean.xml"); JOXBeanOutputStream joxOut = new JOXBeanOutputStream(fileOut); joxOut.writeObject("MarkTest", b); joxOut.close(); ByteArrayOutputStream baos = new ByteArrayOutputStream(); Reader stylesheet = null; // Get the XSLT processor XSLTProcessor processor = XSLTProcessorFactory.getProcessor(); // Create the input source Reader responseReader = new StringReader("f:/ProgramFiles/jox/source/com/wutka/jox/test/bean.xml"); XSLTInputSource responseSource = new XSLTInputSource(responseReader); // Get the stylesheet String stylesheetPath = ""; try { stylesheet = new FileReader("c:/stylesheet.css"); } catch (FileNotFoundException fnfe) {} if (stylesheet == null) { stylesheet = new FileReader("c:/stylesheet.css"); } XSLTInputSource stylesheetSource = new XSLTInputSource(stylesheet); // Get a target to contain the output Writer formWriter = new StringWriter(); XSLTResultTarget target = new XSLTResultTarget(formWriter); // Transform the XML response to fo format processor.process(responseSource, stylesheetSource, target); // Redirect the fo file from a Writer to a Reader Reader formReader = new StringReader(formWriter.toString()); // Transform from fop to pdf XMLReader xmlReader = new SAXParser(); Driver driver = new Driver(); driver.setRenderer(new org.apache.fop.render.pdf.PDFRenderer ()); driver.addElementMapping("org.apache.fop.fo.StandardElementMapping"); driver.addElementMapping("org.apache.fop.svg.SVGElementMapping"); driver.addPropertyList("org.apache.fop.fo.StandardPropertyListMapping"); driver.addPropertyList("org.apache.fop.svg.SVGPropertyListMapping"); driver.setOutputStream(new BufferedOutputStream(baos)); driver.buildFOTree(xmlReader, new InputSource(formReader)); driver.format(); driver.render(); // Clean up baos.close(); stylesheet.close(); } catch (Exception exc) { exc.printStackTrace(); } } } Any ideas would be appreciated. Scott Mitchell Experienced Software Developer Liberty Information Technology Direct Line: ++44 (0) 28 9044 5582 Clarendon House Fax: ++44 (0) 28 9044 5511 9-21 Adelaide Street Switchboard: ++44 (0) 28 9044 5500 Belfast, Northern Ireland BT2 8DJ Email: [EMAIL PROTECTED] Disclaimer: The contents of this e-mail and attached files in no way reflect any policies of Liberty Information Technology Ltd. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]