java - JasperReports: Getting JRRuntimeException: Error creating SAX parser -


we have created reports using ireport4.5.1. working in ireport.

after have integrated reports our application. build our application using maven. following jasperreports dependencies in pom.xml

<dependency>     <groupid>net.sf.jasperreports</groupid>     <artifactid>jasperreports</artifactid>     <version>4.5.1</version> </dependency>  <dependency>     <groupid>jasperreports-javaflow</groupid>     <artifactid>jasperreports-javaflow</artifactid>     <version>4.5.1</version> </dependency> 

and following java code generate report :

string jrxmlfilepath = getconfigbundle().getstring("jasper.templates.jrxml.path"); string jasperfilepath = getconfigbundle().getstring("jasper.templates.jasper.path"); jaspercompilemanager.compilereporttofile(jrxmlfilepath, jasperfilepath); file jasperfile = new file(jasperfilepath); connection conn = setupdatasource(); hashmap jasperparameter = setupjasperparameterforpackinglist(truckid, rackid, jasperfile); jasperprint jprint = jasperfillmanager.fillreport(jasperfilepath, jasperparameter, conn); bytearrayoutputstream reportoutputstream = new bytearrayoutputstream(); jasperexportmanager.exportreporttopdfstream(jprint, reportoutputstream); return reportoutputstream; 

when call code give me following error :

error - [dgu_action_servlet] servletexception javax.servlet.servletexception: net.sf.jasperreports.engine.jrruntimeexception: error creating sax parser     @ org.apache.struts.action.requestprocessor.processexception(requestprocessor.java:535)     @ org.apache.struts.action.requestprocessor.processactionperform(requestprocessor.java:433)     @ org.apache.struts.action.requestprocessor.process(requestprocessor.java:236)     @ org.apache.struts.action.actionservlet.process(actionservlet.java:1196)     @ com.saintgobain.dgu.mvc.action.dguactionservlet.process(dguactionservlet.java:41)     @ org.apache.struts.action.actionservlet.doget(actionservlet.java:414)     @ javax.servlet.http.httpservlet.service(httpservlet.java:621)     @ javax.servlet.http.httpservlet.service(httpservlet.java:722)     @ org.apache.catalina.core.applicationfilterchain.internaldofilter(applicationfilterchain.java:305)     @ org.apache.catalina.core.applicationfilterchain.dofilter(applicationfilterchain.java:210)     @ org.apache.catalina.core.standardwrappervalve.invoke(standardwrappervalve.java:225)     @ org.apache.catalina.core.standardcontextvalve.invoke(standardcontextvalve.java:123)     @ org.apache.catalina.authenticator.authenticatorbase.invoke(authenticatorbase.java:472)     @ org.apache.catalina.core.standardhostvalve.invoke(standardhostvalve.java:168)     @ org.apache.catalina.valves.errorreportvalve.invoke(errorreportvalve.java:98)     @ org.apache.catalina.valves.accesslogvalve.invoke(accesslogvalve.java:927)     @ org.apache.catalina.core.standardenginevalve.invoke(standardenginevalve.java:118)     @ org.apache.catalina.connector.coyoteadapter.service(coyoteadapter.java:407)     @ org.apache.coyote.http11.abstracthttp11processor.process(abstracthttp11processor.java:1001)     @ org.apache.coyote.abstractprotocol$abstractconnectionhandler.process(abstractprotocol.java:585)     @ org.apache.tomcat.util.net.jioendpoint$socketprocessor.run(jioendpoint.java:310)     @ java.util.concurrent.threadpoolexecutor$worker.runtask(threadpoolexecutor.java:886)     @ java.util.concurrent.threadpoolexecutor$worker.run(threadpoolexecutor.java:908)     @ java.lang.thread.run(thread.java:662) caused by: net.sf.jasperreports.engine.jrruntimeexception: error creating sax parser     @ net.sf.jasperreports.engine.xml.basesaxparserfactory.createparser(basesaxparserfactory.java:99)     @ net.sf.jasperreports.engine.xml.jrxmldigesterfactory.createparser(jrxmldigesterfactory.java:1342)     @ net.sf.jasperreports.engine.xml.jrxmldigesterfactory.createdigester(jrxmldigesterfactory.java:1318)     @ net.sf.jasperreports.engine.xml.jrxmlloader.load(jrxmlloader.java:207)     @ net.sf.jasperreports.engine.xml.jrxmlloader.load(jrxmlloader.java:172)     @ net.sf.jasperreports.engine.xml.jrxmlloader.load(jrxmlloader.java:156)     @ net.sf.jasperreports.engine.jaspercompilemanager.compilereporttofile(jaspercompilemanager.java:108)     @ com.saintgobain.dgu.helper.exportreportpdfhelper.printpackinglistjasper(exportreportpdfhelper.java:287)     @ com.saintgobain.dgu.helper.exportreportpdfhelper.generatepdf4packinglist(exportreportpdfhelper.java:353)     @ com.saintgobain.dgu.mvc.action.shipping.exportshippingreportaction.execute(exportshippingreportaction.java:79)     @ org.apache.struts.action.requestprocessor.processactionperform(requestprocessor.java:431)     ... 22 more caused by: org.xml.sax.saxnotrecognizedexception: property: http://java.sun.com/xml/jaxp/properties/schemalanguage     @ org.apache.crimson.parser.xmlreaderimpl.setproperty(xmlreaderimpl.java:266)     @ org.apache.crimson.jaxp.saxparserimpl.setproperty(saxparserimpl.java:183)     @ net.sf.jasperreports.engine.xml.basesaxparserfactory.configureparser(basesaxparserfactory.java:132)     @ net.sf.jasperreports.engine.xml.basesaxparserfactory.createparser(basesaxparserfactory.java:94)     ... 32 more error - [dgu_action_servlet] servletexception - root cause net.sf.jasperreports.engine.jrruntimeexception: error creating sax parser     @ net.sf.jasperreports.engine.xml.basesaxparserfactory.createparser(basesaxparserfactory.java:99)     @ net.sf.jasperreports.engine.xml.jrxmldigesterfactory.createparser(jrxmldigesterfactory.java:1342)     @ net.sf.jasperreports.engine.xml.jrxmldigesterfactory.createdigester(jrxmldigesterfactory.java:1318)     @ net.sf.jasperreports.engine.xml.jrxmlloader.load(jrxmlloader.java:207)     @ net.sf.jasperreports.engine.xml.jrxmlloader.load(jrxmlloader.java:172)     @ net.sf.jasperreports.engine.xml.jrxmlloader.load(jrxmlloader.java:156)     @ net.sf.jasperreports.engine.jaspercompilemanager.compilereporttofile(jaspercompilemanager.java:108)     @ com.saintgobain.dgu.helper.exportreportpdfhelper.printpackinglistjasper(exportreportpdfhelper.java:287)     @ com.saintgobain.dgu.helper.exportreportpdfhelper.generatepdf4packinglist(exportreportpdfhelper.java:353)     @ com.saintgobain.dgu.mvc.action.shipping.exportshippingreportaction.execute(exportshippingreportaction.java:79)     @ org.apache.struts.action.requestprocessor.processactionperform(requestprocessor.java:431)     @ org.apache.struts.action.requestprocessor.process(requestprocessor.java:236)     @ org.apache.struts.action.actionservlet.process(actionservlet.java:1196)     @ com.saintgobain.dgu.mvc.action.dguactionservlet.process(dguactionservlet.java:41)     @ org.apache.struts.action.actionservlet.doget(actionservlet.java:414)     @ javax.servlet.http.httpservlet.service(httpservlet.java:621)     @ javax.servlet.http.httpservlet.service(httpservlet.java:722)     @ org.apache.catalina.core.applicationfilterchain.internaldofilter(applicationfilterchain.java:305)     @ org.apache.catalina.core.applicationfilterchain.dofilter(applicationfilterchain.java:210)     @ org.apache.catalina.core.standardwrappervalve.invoke(standardwrappervalve.java:225)     @ org.apache.catalina.core.standardcontextvalve.invoke(standardcontextvalve.java:123)     @ org.apache.catalina.authenticator.authenticatorbase.invoke(authenticatorbase.java:472)     @ org.apache.catalina.core.standardhostvalve.invoke(standardhostvalve.java:168)     @ org.apache.catalina.valves.errorreportvalve.invoke(errorreportvalve.java:98)     @ org.apache.catalina.valves.accesslogvalve.invoke(accesslogvalve.java:927)     @ org.apache.catalina.core.standardenginevalve.invoke(standardenginevalve.java:118)     @ org.apache.catalina.connector.coyoteadapter.service(coyoteadapter.java:407)     @ org.apache.coyote.http11.abstracthttp11processor.process(abstracthttp11processor.java:1001)     @ org.apache.coyote.abstractprotocol$abstractconnectionhandler.process(abstractprotocol.java:585)     @ org.apache.tomcat.util.net.jioendpoint$socketprocessor.run(jioendpoint.java:310)     @ java.util.concurrent.threadpoolexecutor$worker.runtask(threadpoolexecutor.java:886)     @ java.util.concurrent.threadpoolexecutor$worker.run(threadpoolexecutor.java:908)     @ java.lang.thread.run(thread.java:662) caused by: org.xml.sax.saxnotrecognizedexception: property: http://java.sun.com/xml/jaxp/properties/schemalanguage     @ org.apache.crimson.parser.xmlreaderimpl.setproperty(xmlreaderimpl.java:266)     @ org.apache.crimson.jaxp.saxparserimpl.setproperty(saxparserimpl.java:183)     @ net.sf.jasperreports.engine.xml.basesaxparserfactory.configureparser(basesaxparserfactory.java:132)     @ net.sf.jasperreports.engine.xml.basesaxparserfactory.createparser(basesaxparserfactory.java:94)     ... 32 more 
  1. we using both ireport , jasperreports version 4.5.1
  2. i have put xercesimpl.jar (version 2.8.1) dependency in class path
  3. we using jdk.1.6.0_33

please how remove error?

as can see line of stacktrace:

org.apache.crimson.parser.xmlreaderimpl.setproperty(xmlreaderimpl.java:266) 

the crimson xml parser used in application.

the crimson implementation not support property value different values[1]:

"http://xml.org/sax/properties/lexical-handler" 

and

"http://xml.org/sax/properties/declaration-handler" 

but jasperreports engine try use http://java.sun.com/xml/jaxp/properties/schemalanguage property (as can see stacktrace[2]).

the ireport using xerces xml parser implementation. example, ireport 4.7.0 , ireport 5.2.0 using 2.8.0 version of xerces.

you can try add (xerces) library pom.xml dependency.

notes:

[1]: see source code of method getproperty(string) in org.apache.crimson.parser.xmlreaderimpl class.

[2]:the jr engine try set property saxparser in net.sf.jasperreports.engine.xml.basesaxparserfactory.configureparser(saxparser) method.


Comments

Popular posts from this blog

php - Calling a template part from a post -

Firefox SVG shape not printing when it has stroke -

How to mention the localhost in android -