我是Rails的新手,但不是Java。我一直试图在https://github.com/fortesinformatica/jasper-rails测试jasper-rails
项目并且该文档看起来很简单,但我发现它不那么简单。开发人员没有回答我的问题,所以我在这里问。
我使用iReport创建了我的报告(jasper-rails
暗示有效),我将.jrxml文件放在app/views/jasper/index.jrxml
中。当我加载localhost:3000/jasper.pdf
时出现此错误:
RuntimeError (net.sf.jasperreports.engine.JRException: org.xml.sax.SAXParseException;
lineNumber: 8; columnNumber: 16; Error at line 8 char 16: No query executer factory
registered for the 'xpath2' language.): app/controllers/jasper_controller.rb:7:in `index'
所以它似乎不知道如何处理xpath2
。不幸的是,我在iReport版本中唯一的选择是xpath2
。如果我在Rails输出中向上滚动,我会看到:
java.lang.reflect.InvocationTargetException
[....]
Caused by: net.sf.jasperreports.engine.JRRuntimeException: No query executer factory registered for the 'xpath2' language.
at net.sf.jasperreports.engine.util.JRQueryExecuterUtils.getExecuterFactory(JRQueryExecuterUtils.java:114)
at net.sf.jasperreports.engine.design.JRDesignDataset.queryLanguageChanged(JRDesignDataset.java:1152)
at net.sf.jasperreports.engine.design.JRDesignDataset.setQuery(JRDesignDataset.java:630)
at net.sf.jasperreports.engine.design.JasperDesign.setQuery(JasperDesign.java:791)
所以似乎JasperReports需要为xpath2配置一些东西。
我已将jasper-rails
使用的罐子替换为ireport/modules/ext
中的罐子,但我得到的答案相同。所以,不知何故,我必须告诉jasper-rails
我的xpath2
。但是怎么样?或者旧版iReport会更好用吗?有人有这个工作吗?
答案 0 :(得分:0)
JasperRails使用xpath而不是xPath2