Hello, i use FOP in a servlet together with the Saxon XSL processor. I implemented the communication between the processors as a SAX event stream. The following code snippet was developed with FOP 0.20.1, i think with 0.20.2 i could use the Driver again but i don't want to bother with this yet.
Transformer transformer=getTransformer(xslFile); // setup FOP org.apache.fop.system.BufferManager bufferManager =new org.apache.fop.system.BufferManager(); org.apache.fop.fo.FOTreeBuilder treeBuilder =new org.apache.fop.fo.FOTreeBuilder(); treeBuilder.setBufferManager(bufferManager); org.apache.fop.fo.ElementMapping mapping; mapping=(org.apache.fop.fo.ElementMapping)Class.forName( "org.apache.fop.fo.StandardElementMapping").newInstance(); mapping.addToBuilder(treeBuilder); [ more mapping code lifted from Driver.java snipped ] org.apache.fop.apps.StreamRenderer streamRenderer = new org.apache.fop.apps.StreamRenderer(out, new org.apache.fop.render.pdf.PDFRenderer()); treeBuilder.setStreamRenderer(streamRenderer); [ setting up log snipped - a nightmare! ] // the transformer gets its input data wia a customized XMLReader // from the servlet parameters transformer.transform(new SAXSource(new DocXMLReader(), new DocServletParameterInputSource(req)), new SAXResult(treeBuilder)); byte[] content = out.toByteArray(); res.setContentType("application/pdf"); res.setContentLength(content.length); res.getOutputStream().write(content); res.getOutputStream().flush(); The problem i want help about is the exception [ERROR]: Could not set base URL for svg java.net.MalformedURLException: no protocol: at java.net.URL.<init>(URL.java:473) at java.net.URL.<init>(URL.java:376) at java.net.URL.<init>(URL.java:330) at org.apache.fop.svg.SVGElement.layout(SVGElement.java:143) at org.apache.fop.fo.flow.InstreamForeignObject.layout(InstreamForeignObject.java:198) at org.apache.fop.fo.flow.Block.layout(Block.java:259) Fortunately, the file renders fine, the missing information is aparently not needed. The SVG is defined in the XSL file. How do i set the base URL for the SVG element, just in order to pacifiy the software? Should i use a real file name (for example the name of the XSL file) or is it sufficient to use ""? J.Pietschmann --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]