gpt4 book ai didi

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

转载 作者:搜寻专家 更新时间:2023-10-31 20:07:37 25 4
gpt4 key购买 nike

我实现了 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)

有人可以给我提示吗?

问候汉内斯

最佳答案

使用jasperreports 5.2.0,你需要:

  1. 创建自定义 YourCustomExecuterFactory 实现 QueryExecuterFactory 类。
  2. 让你的新 YourCustomExecuterFactory 使用你自定义的 JRQueryExecuter 实现方法 QueryExecuterFactory.createQueryExecuter(..)
  3. 将新语言(tmql?)映射到您的自定义工厂。在您的 jasperresports.properties 中设置此属性:net.sf.jasperreports.query.executer.factory.tmql=your.package.YourCustomExecuterFactory

希望这对某人有帮助。

关于java - 如何在 java 中的 jasper 报告中注册 QueryExecuterFactory,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2021267/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com