Java 使用数据库中保存的.jrtx
我正在尝试使用像blob一样保存的.jrtx文件 我以以下方式传递文件.jrtx:Java 使用数据库中保存的.jrtx,java,jasper-reports,java-io,Java,Jasper Reports,Java Io,我正在尝试使用像blob一样保存的.jrtx文件 我以以下方式传递文件.jrtx: InputStream docStyle = new ByteArrayInputStream(myBean.getDocStyle()); map.put("docStyle", docStyle); 在我的.jrxml文件中,我有: <parameter name="docStyle" class="java.lang.Object"/> 我得到以下错误: Caused by: org.xm
InputStream docStyle = new ByteArrayInputStream(myBean.getDocStyle());
map.put("docStyle", docStyle);
在我的.jrxml文件中,我有:
<parameter name="docStyle" class="java.lang.Object"/>
我得到以下错误:
Caused by: org.xml.sax.SAXParseException: Premature end of file.
at org.apache.xerces.util.ErrorHandlerWrapper.createSAXParseException(Unknown Source)
at org.apache.xerces.util.ErrorHandlerWrapper.fatalError(Unknown Source)
at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)
at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)
at org.apache.xerces.impl.XMLVersionDetector.determineDocVersion(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
at org.apache.commons.digester.Digester.parse(Digester.java:1916)
at net.sf.jasperreports.engine.xml.JRXmlTemplateLoader.loadTemplate(JRXmlTemplateLoader.java:195)
... 78 more
如何解决此问题?问题是,一旦文件偏移位置计数器移动到文件末尾,读取流时,在其他时间使用相同的流,您将得到错误。我使用
docStyle.reset()解决了这个问题代码>
Caused by: org.xml.sax.SAXParseException: Premature end of file.
at org.apache.xerces.util.ErrorHandlerWrapper.createSAXParseException(Unknown Source)
at org.apache.xerces.util.ErrorHandlerWrapper.fatalError(Unknown Source)
at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)
at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)
at org.apache.xerces.impl.XMLVersionDetector.determineDocVersion(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
at org.apache.commons.digester.Digester.parse(Digester.java:1916)
at net.sf.jasperreports.engine.xml.JRXmlTemplateLoader.loadTemplate(JRXmlTemplateLoader.java:195)
... 78 more