A few weeks ago, he worked PERFECTLY with my SVG, but for some reason it stopped working, and I donβt know the reason, because the error running on the server did not help. This happens when I transfer the svg file to the pdf file:
Root element namespace does not match that requested: Requested: http://www.w3.org/2000/svg Found: null. Stacktrace follows: org.apache.batik.bridge.BridgeException: Root element namespace does not match that requested: Requested: http://www.w3.org/2000/svg Found: null at org.apache.batik.bridge.BridgeContext.getReferencedNode(BridgeContext.java:780) at org.apache.batik.bridge.BridgeContext.getReferencedElement(BridgeContext.java:796) at org.apache.batik.bridge.CSSUtilities.convertClipPath(CSSUtilities.java:719) at org.apache.batik.bridge.AbstractGraphicsNodeBridge.buildGraphicsNode(AbstractGraphicsNodeBridge.java:146) at org.apache.batik.bridge.GVTBuilder.buildGraphicsNode(GVTBuilder.java:224) at org.apache.batik.bridge.GVTBuilder.buildComposite(GVTBuilder.java:171) at org.apache.batik.bridge.GVTBuilder.buildGraphicsNode(GVTBuilder.java:219) at org.apache.batik.bridge.GVTBuilder.buildComposite(GVTBuilder.java:171) at org.apache.batik.bridge.GVTBuilder.build(GVTBuilder.java:82) at net.sf.jasperreports.renderers.BatikRenderer.ensureSvg(BatikRenderer.java:192) at net.sf.jasperreports.renderers.BatikRenderer.getDimension(BatikRenderer.java:141) at net.sf.jasperreports.engine.export.JRPdfExporter.exportImage(JRPdfExporter.java:1351) at net.sf.jasperreports.engine.export.JRPdfExporter.exportElements(JRPdfExporter.java:774) at net.sf.jasperreports.engine.export.JRPdfExporter.exportPage(JRPdfExporter.java:738) at net.sf.jasperreports.engine.export.JRPdfExporter.exportReportToStream(JRPdfExporter.java:616) at net.sf.jasperreports.engine.export.JRPdfExporter.exportReport(JRPdfExporter.java:364) at com.scacp.operation.MonitoringWellController$_closure13.doCall(MonitoringWellController.groovy:749) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745)
I don't know what this means, my xml svg (on the XML validation website) is valid code. I write like this:
file.write('<?xml version="1.0" encoding="UTF-8"?> \n' + '<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> \n' + '<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="705px" height="1000px" viewBox="0 0 705 1000" enable-background="new 0 0 705 1000" xml:space="preserve"> \n' + svgimage + '\n' + '</svg>');
The svgimage variable is a collection of g , defs , text , images , etc. (really big, e.g. 1k lines)
xml jasper-reports svg
fsi
source share