如何在java中的jasper报告中注册QueryExecuterFactory

Han*_*sen 5 java jasper-reports

我实现了JRQueryExecuter并希望在报告中使用它.使用iReport我设法注册并使用执行程序.

现在我想在java应用程序中使用它,但我找不到任何资源如何注册工厂.

我认为在类路径中实现它已经足够了,但我得到以下异常:

Caused by: net.sf.jasperreports.engine.JRException: No query executer factory class registered for tmql queries.
at net.sf.jasperreports.engine.query.DefaultQueryExecuterFactoryBundle.getQueryExecuterFactory(DefaultQueryExecuterFactoryBundle.java:80)
at net.sf.jasperreports.engine.util.JRQueryExecuterUtils.getQueryExecuterFactory(JRQueryExecuterUtils.java:57)
at net.sf.jasperreports.engine.design.JRDesignDataset.queryLanguageChanged(JRDesignDataset.java:1006)
Run Code Online (Sandbox Code Playgroud)

任何人都可以给我一个提示吗?

哈恩斯

小智 1

文档建议设置一个属性:

JasperReport jasperReport = <...>
jasperReport.setProperty(JRQueryExecuterFactory.QUERY_EXECUTER_FACTORY_PREFIX + "<query language>", "<value>");
Run Code Online (Sandbox Code Playgroud)

那样有用吗?