Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/379.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java iReport:使用XML数据源编译报告失败_Java_Xml_Jasper Reports - Fatal编程技术网

Java iReport:使用XML数据源编译报告失败

Java iReport:使用XML数据源编译报告失败,java,xml,jasper-reports,Java,Xml,Jasper Reports,我尝试在iReport上使用XML,所以我读了一篇 但当我编写一份报告时,我得到了以下错误: Error filling print... XPath compilation failed. Expression:  net.sf.jasperreports.engine.JRException: XPath compilation failed. Expression:   at net.sf.jasperreports.engine.util.xml.JaxenXPathExecuter

我尝试在iReport上使用XML,所以我读了一篇

但当我编写一份报告时,我得到了以下错误:

Error filling print... XPath compilation failed. Expression:  

net.sf.jasperreports.engine.JRException: XPath compilation failed. Expression:  
at net.sf.jasperreports.engine.util.xml.JaxenXPathExecuter.getXPath JaxenXPathExecuter.java:66)      
at net.sf.jasperreports.engine.util.xml.JaxenXPathExecuter.selectNodeList(JaxenXPathExecuter.java:77)      
at net.sf.jasperreports.engine.data.JRXmlDataSource.moveFirst(JRXmlDataSource.java:415) 
at net.sf.jasperreports.engine.data.JRXmlDataSource.<init>(JRXmlDataSource.java:189) 
at net.sf.jasperreports.engine.query.JRXPathQueryExecuter.createDatasource(JRXPathQueryExecuter.java:113)
at net.sf.jasperreports.engine.fill.JRFillDataset.createQueryDatasource(JRFillDataset.java:1087)  
at net.sf.jasperreports.engine.fill.JRFillDataset.initDatasource(JRFillDataset.java:668)  
at net.sf.jasperreports.engine.fill.JRBaseFiller.setParameters(JRBaseFiller.java:1258)  
at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:877)  
at net.sf.jasperreports.engine.fill.JRFiller.fill(JRFiller.java:126)  
at net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:464)  
at net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:300)  
at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:757)  
at com.jaspersoft.ireport.designer.compiler.IReportCompiler.run(IReportCompiler.java:1003) 
at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:997) 
Caused by: org.jaxen.XPathSyntaxException: Unexpected ''      
at org.jaxen.BaseXPath.<init>(BaseXPath.java:118)      
at org.jaxen.BaseXPath.<init>(BaseXPath.java:139)      
at org.jaxen.dom.DOMXPath.<init>(DOMXPath.java:87) 
at net.sf.jasperreports.engine.util.xml.JaxenXPathExecuter.getXPath(JaxenXPathExecuter.java:62)     
 ... 15 more  
Caused by: class org.jaxen.saxpath.XPathSyntaxException: : 0: Unexpected ''  
at org.jaxen.saxpath.base.XPathReader.createSyntaxException(XPathReader.java:1084)  
at org.jaxen.saxpath.base.XPathReader.pathExpr(XPathReader.java:190)  
at org.jaxen.saxpath.base.XPathReader.unionExpr(XPathReader.java:1006)  
at org.jaxen.saxpath.base.XPathReader.unaryExpr(XPathReader.java:994)  
at org.jaxen.saxpath.base.XPathReader.multiplicativeExpr(XPathReader.java:943) 
at org.jaxen.saxpath.base.XPathReader.additiveExpr(XPathReader.java:913)  
at org.jaxen.saxpath.base.XPathReader.relationalExpr(XPathReader.java:860)  
at org.jaxen.saxpath.base.XPathReader.equalityExpr(XPathReader.java:829)  
at org.jaxen.saxpath.base.XPathReader.andExpr(XPathReader.java:809)  
at org.jaxen.saxpath.base.XPathReader.orExpr(XPathReader.java:787) 
at org.jaxen.saxpath.base.XPathReader.expr(XPathReader.java:780)  
at org.jaxen.saxpath.base.XPathReader.parse(XPathReader.java:100)      
at org.jaxen.BaseXPath.<init>(BaseXPath.java:113)      ... 18 more  
Print not filled. Try to use an EmptyDataSource...
填充打印时出错…XPath编译失败。表达式: net.sf.jasperreports.engine.JRException:XPath编译失败。表达式: 位于net.sf.jasperreports.engine.util.xml.JaxenXPathExecuter.getXPath JaxenXPathExecuter.java:66) 位于net.sf.jasperreports.engine.util.xml.JaxenXPathExecuter.selectNodeList(JaxenXPathExecuter.java:77) 位于net.sf.jasperreports.engine.data.JRXmlDataSource.moveFirst(JRXmlDataSource.java:415) 位于net.sf.jasperreports.engine.data.JRXmlDataSource.(JRXmlDataSource.java:189) 在net.sf.jasperreports.engine.query.JRXPathQueryExecuter.createDatasource(JRXPathQueryExecuter.java:113) 位于net.sf.jasperreports.engine.fill.JRFillDataset.createQueryDatasource(JRFillDataset.java:1087) 位于net.sf.jasperreports.engine.fill.JRFillDataset.initDatasource(JRFillDataset.java:668) 位于net.sf.jasperreports.engine.fill.JRBaseFiller.setParameters(JRBaseFiller.java:1258) 位于net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:877) 位于net.sf.jasperreports.engine.fill.JRFiller.fill(JRFiller.java:126) 位于net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:464) 位于net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:300) 位于net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:757) 位于com.jaspersoft.ireport.designer.compiler.IReportCompiler.run(IReportCompiler.java:1003) 位于org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:997) 原因:org.jaxen.XPathSyntaxException:意外“” 位于org.jaxen.BaseXPath。(BaseXPath.java:118) 位于org.jaxen.BaseXPath。(BaseXPath.java:139) 位于org.jaxen.dom.DOMXPath(DOMXPath.java:87) 位于net.sf.jasperreports.engine.util.xml.jaxexpathexecuter.getXPath(jaxexpathexecuter.java:62) …还有15个 原因:类org.jaxen.saxpath.XPathSyntaxException::0:意外“” 位于org.jaxen.saxpath.base.XPathReader.createSyntaxException(XPathReader.java:1084) 位于org.jaxen.saxpath.base.XPathReader.pathExpr(XPathReader.java:190) 位于org.jaxen.saxpath.base.XPathReader.unionExpr(XPathReader.java:1006) 位于org.jaxen.saxpath.base.XPathReader.unaryExpr(XPathReader.java:994) 位于org.jaxen.saxpath.base.XPathReader.multiplativeexpr(XPathReader.java:943) 位于org.jaxen.saxpath.base.XPathReader.additiveExpr(XPathReader.java:913) 位于org.jaxen.saxpath.base.XPathReader.relationalExpr(XPathReader.java:860) 位于org.jaxen.saxpath.base.XPathReader.equalityExpr(XPathReader.java:829) 位于org.jaxen.saxpath.base.XPathReader.andExpr(XPathReader.java:809) 位于org.jaxen.saxpath.base.XPathReader.orExpr(XPathReader.java:787) 位于org.jaxen.saxpath.base.XPathReader.expr(XPathReader.java:780) 位于org.jaxen.saxpath.base.XPathReader.parse(XPathReader.java:100) 在org.jaxen.BaseXPath.(BaseXPath.java:113)…更多信息 打印未填写。尝试使用空数据源。。。 XML是:


红色
绿色
蓝色
我的jrxml:



有人能解释一下发生了什么吗?

使用/palete/color作为查询字符串,并将字段描述更改为text()或“.”(删除引号)。

XML更改 从




。。是的,仅此而已,我需要两天时间来解决您遇到的同一个问题-。-

请解释添加
*
如何解决问题,以便其他人将来可以从您的答案中获得帮助。
<queryString language="xPath">
        <![CDATA[]]>
    </queryString>
<queryString language="xPath">
        <![CDATA[*]]>
    </queryString>