
Ayuda Error generar reportes desde JAR
Publicado por Hugo (4 intervenciones) el 07/06/2014 17:56:06
Hola amigos soy nuevo en el foro, y además nuevo en la programación JAVA, quería solicitar su valiosa ayuda con un problema que tengo:
Tengo una aplicacion Java utilizando Eclipse y los reportes diseñados en Ireport 5.5.0, al correr la aplicación dentro de Eclipse los reportes se generan sin ningún problema, luego genere un jar utilizando FAT-JAR, y al ejecutar la aplicación desde el Jar no genera los reportes, la corri desde la ventana de comandos y me da el siguiente error:
Grave: End event threw exception
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.commons.beanutils.MethodUtils.invokeMethod(MethodUtils.java:283)
at org.apache.commons.digester.SetNextRule.end(SetNextRule.java:220)
at org.apache.commons.digester.Rule.end(Rule.java:257)
at org.apache.commons.digester.Digester.endElement(Digester.java:1345)
at net.sf.jasperreports.engine.xml.JRXmlDigester.endElement(JRXmlDigester.java:199)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.endElement(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImp l$FragmentContentDriver.next(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(U
nknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next
(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImp
l.scanDocument(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(U
nknown Source)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(U
nknown Source)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown So
urce)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Un
known Source)
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.p
arse(Unknown Source)
at org.apache.commons.digester.Digester.parse(Digester.java:1892)
at net.sf.jasperreports.engine.xml.JRXmlLoader.loadXML(JRXmlLoader.java:
289)
at net.sf.jasperreports.engine.xml.JRXmlLoader.loadXML(JRXmlLoader.java:
276)
at net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:265
)
at net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:210
)
at net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:194
)
at ReportesVtas.runReporte(ReportesVtas.java:186)
at PRepCons.actionPerformed(PRepCons.java:231)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$200(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
Caused by: net.sf.jasperreports.engine.JRRuntimeException: No query executer fac
tory registered for the 'SQL' language.
at net.sf.jasperreports.engine.util.JRQueryExecuterUtils.getExecuterFact
ory(JRQueryExecuterUtils.java:114)
at net.sf.jasperreports.engine.design.JRDesignDataset.queryLanguageChang
ed(JRDesignDataset.java:1180)
at net.sf.jasperreports.engine.design.JRDesignDataset.setQuery(JRDesignD
ataset.java:647)
at net.sf.jasperreports.engine.design.JasperDesign.setQuery(JasperDesign
.java:791)
... 65 more
Mensaje de Error:org.xml.sax.SAXParseException; lineNumber: 51; columnNumber: 16
; Error at line 51 char 16: No query executer factory registered for the 'SQL' language.
Según esta traza el error es causado en: "Caused by: net.sf.jasperreports.engine.JRRuntimeException: No query executer factory registered for the 'SQL' language."
Ya verifique el archivo "defaultjasperreports" dentro del FatJar y allí esta registrado el SQL para el query executer Factory, estas son las líneas:
# Query executer settings
net.sf.jasperreports.query.executer.factory.sql=net.sf.jasperreports.engine.query.JRJdbcQueryExecuterFactory
net.sf.jasperreports.query.executer.factory.SQL=net.sf.jasperreports.engine.query.JRJdbcQueryExecuterFactory
net.sf.jasperreports.query.executer.factory.hql=net.sf.jasperreports.engine.query.JRHibernateQueryExecuterFactory
net.sf.jasperreports.query.executer.factory.HQL=net.sf.jasperreports.engine.query.JRHibernateQueryExecuterFactory
net.sf.jasperreports.query.executer.factory.xPath=net.sf.jasperreports.engine.query.JRXPathQueryExecuterFactory
net.sf.jasperreports.query.executer.factory.XPath=net.sf.jasperreports.engine.query.JRXPathQueryExecuterFactory
También van todos los archivos de reportes y librerías en el FatJar.
Ya busque por toda la red una solución y hasta ahorita no he encontrado nada que me guie, alguien que me ilumine.
De antemano muchas gracias
Tengo una aplicacion Java utilizando Eclipse y los reportes diseñados en Ireport 5.5.0, al correr la aplicación dentro de Eclipse los reportes se generan sin ningún problema, luego genere un jar utilizando FAT-JAR, y al ejecutar la aplicación desde el Jar no genera los reportes, la corri desde la ventana de comandos y me da el siguiente error:
Grave: End event threw exception
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.commons.beanutils.MethodUtils.invokeMethod(MethodUtils.java:283)
at org.apache.commons.digester.SetNextRule.end(SetNextRule.java:220)
at org.apache.commons.digester.Rule.end(Rule.java:257)
at org.apache.commons.digester.Digester.endElement(Digester.java:1345)
at net.sf.jasperreports.engine.xml.JRXmlDigester.endElement(JRXmlDigester.java:199)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.endElement(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImp l$FragmentContentDriver.next(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(U
nknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next
(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImp
l.scanDocument(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(U
nknown Source)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(U
nknown Source)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown So
urce)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Un
known Source)
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.p
arse(Unknown Source)
at org.apache.commons.digester.Digester.parse(Digester.java:1892)
at net.sf.jasperreports.engine.xml.JRXmlLoader.loadXML(JRXmlLoader.java:
289)
at net.sf.jasperreports.engine.xml.JRXmlLoader.loadXML(JRXmlLoader.java:
276)
at net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:265
)
at net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:210
)
at net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:194
)
at ReportesVtas.runReporte(ReportesVtas.java:186)
at PRepCons.actionPerformed(PRepCons.java:231)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$200(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
Caused by: net.sf.jasperreports.engine.JRRuntimeException: No query executer fac
tory registered for the 'SQL' language.
at net.sf.jasperreports.engine.util.JRQueryExecuterUtils.getExecuterFact
ory(JRQueryExecuterUtils.java:114)
at net.sf.jasperreports.engine.design.JRDesignDataset.queryLanguageChang
ed(JRDesignDataset.java:1180)
at net.sf.jasperreports.engine.design.JRDesignDataset.setQuery(JRDesignD
ataset.java:647)
at net.sf.jasperreports.engine.design.JasperDesign.setQuery(JasperDesign
.java:791)
... 65 more
Mensaje de Error:org.xml.sax.SAXParseException; lineNumber: 51; columnNumber: 16
; Error at line 51 char 16: No query executer factory registered for the 'SQL' language.
Según esta traza el error es causado en: "Caused by: net.sf.jasperreports.engine.JRRuntimeException: No query executer factory registered for the 'SQL' language."
Ya verifique el archivo "defaultjasperreports" dentro del FatJar y allí esta registrado el SQL para el query executer Factory, estas son las líneas:
# Query executer settings
net.sf.jasperreports.query.executer.factory.sql=net.sf.jasperreports.engine.query.JRJdbcQueryExecuterFactory
net.sf.jasperreports.query.executer.factory.SQL=net.sf.jasperreports.engine.query.JRJdbcQueryExecuterFactory
net.sf.jasperreports.query.executer.factory.hql=net.sf.jasperreports.engine.query.JRHibernateQueryExecuterFactory
net.sf.jasperreports.query.executer.factory.HQL=net.sf.jasperreports.engine.query.JRHibernateQueryExecuterFactory
net.sf.jasperreports.query.executer.factory.xPath=net.sf.jasperreports.engine.query.JRXPathQueryExecuterFactory
net.sf.jasperreports.query.executer.factory.XPath=net.sf.jasperreports.engine.query.JRXPathQueryExecuterFactory
También van todos los archivos de reportes y librerías en el FatJar.
Ya busque por toda la red una solución y hasta ahorita no he encontrado nada que me guie, alguien que me ilumine.
De antemano muchas gracias
Valora esta pregunta


0