1. java
  2. android
  3. c#
  4. .net
  5. javascript
  6. php
  7. jquery
  8. html
  9. sql

Erro ao compilar .JRXML para gerar .JASPER em projeto maven

Olá,

seguinte, tenho uma aplicação que gera relatórios inserindo um arquivo JRXML a escolha do usuario, onde a aplicação o compila e ja gera meu relatório sem a necessidade da ferramenta de studio para fazer isto para gerar o arquivo .JASPER (compilado).

//pega o arquivo .JRXML
jasperDesign = JRXmlLoader.load("diretorio do arquivo.JRXML");

//Compila o jrxml gerando o .jasper
JasperReport jasper = JasperCompileManager.compileReport(jasperDesign);

o problema é que funciona enquanto estou na minha IDE (netbeans), mas abro o projeto pelo seu executavel em uma maquina virtual rodando somente a JVM, ele da um erro ao executar esta linha que compila o arquivo.

alguém sabe o que possa ser? já não tenho mais idéias.. segue abaixo a Exception que está sendo apresentada:

SEVERE: null
net.sf.jasperreports.engine.JRException: org.xml.sax.SAXParseException; lineNumb
er: 60; columnNumber: 16; Error at line 60 char 16: No query executer factory re
gistered for the 'xPath' language.
        at net.sf.jasperreports.engine.xml.JRXmlLoader.loadXML(JRXmlLoader.java:
247)
        at net.sf.jasperreports.engine.xml.JRXmlLoader.loadXML(JRXmlLoader.java:
230)
        at net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:218
)
        at net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:172
)
        at net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:156
)
        at com.idbrasil.util.FuncoesJasperReport.geraDanfe(FuncoesJasperReport.j
ava:90)
        at com.idbrasil.runnable.RunnableImpressao.imprimirSolicitacaoDanfe(Runn
ableImpressao.java:128)
        at com.idbrasil.runnable.RunnableImpressao.setConfiguracaoRunnable(Runna
bleImpressao.java:75)
        at com.idbrasil.runnable.RunnableImpressao.run(RunnableImpressao.java:53
)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)
Caused by: org.xml.sax.SAXParseException; lineNumber: 60; columnNumber: 16; Erro
r at line 60 char 16: No query executer factory registered for the 'xPath' langu
age.
        at org.apache.commons.digester.Digester.createSAXException(Digester.java
:3363)
        at org.apache.commons.digester.Digester.createSAXException(Digester.java
:3389)
        at org.apache.commons.digester.Digester.endElement(Digester.java:1348)
        at net.sf.jasperreports.engine.xml.JRXmlDigester.endElement(JRXmlDigeste
r.java:199)
        at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endEleme
nt(Unknown Source)
        at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.endElem
ent(Unknown Source)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImp
l.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:
243)
        ... 11 more
Caused by: net.sf.jasperreports.engine.JRRuntimeException: No query executer fac
tory registered for the 'xPath' language.
        at net.sf.jasperreports.engine.util.JRQueryExecuterUtils.getExecuterFact
ory(JRQueryExecuterUtils.java:114)
        at net.sf.jasperreports.engine.design.JRDesignDataset.queryLanguageChang
ed(JRDesignDataset.java:1163)
        at net.sf.jasperreports.engine.design.JRDesignDataset.setQuery(JRDesignD
ataset.java:630)
        at net.sf.jasperreports.engine.design.JasperDesign.setQuery(JasperDesign
.java:791)
        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.jav
a:281)
        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)
        ... 26 more
  • Viu isso? link

    drsmachado   23 de ago de 2013
  • não intendi o que isso é e oq q ta fazendo :/ ``` jrc.setProperty( JRXPathExecuterUtils.PROPERTY_XPATH_EXECUTER_FACTORY, XalanNamedParameterXPathExecutor.class.getCanonicalName());

    JasperFillManager jfm = JasperFillManager.getInstance(jrc); ```

    Chico Luiz   23 de ago de 2013
  • não intendi pra isso serve :/ ```jrc.setProperty(JRXPathExecuterUtils.PROPERTY_XPATH_EXECUTER_FACTORY,XalanNamedParameterXPathExecutor.class.getCanonicalName());

    JasperFillManager jfm = JasperFillManager.getInstance(jrc); ```

    Chico Luiz   23 de ago de 2013
  1. Você vai ver essas setas em qualquer página de pergunta. Com elas, você pode dizer se uma pergunta ou uma resposta foram relevantes ou não.
  2. Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
  3. Caso haja alguma dúvida sobre a pergunta, adicione um comentário. O espaço de respostas deve ser utilizado apenas para responder a pergunta.
  4. Se o autor da pergunta marcar uma resposta como solucionada, esta marca aparecerá.
  5. Clique aqui para mais detalhes sobre o funcionamento do GUJ!

0 resposta

Não é a resposta que estava procurando? Procure outras perguntas com as tags java relatórios jasperreports ou faça a sua própria pergunta.