- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我们的客户很喜欢 Jasper 查看器,但我们遇到了问题。它将数据导出为多种不同的格式(PDF、Excel、CSV、HTML 等),但我们的客户只想导出为 PDF。
我们如何自定义 Jasper Viewer,以便我们的用户可以选择导出数据的唯一格式是 PDF?
最佳答案
我找到了一个解决方案,在我看来这很糟糕,但对我的情况很有效。
嗯:阅读 JasperViewer 类的源代码,我发现该类上有一个名为 viewer 的 protected 字段。
所以,我所要做的就是编写如下代码:
Field jrViewerField;
try {
jrViewerField = viewer.getClass().getDeclaredField("viewer");
jrViewerField.setAccessible(true);
JRViewer jrViewer = (JRViewer) jrViewerField.get(viewer);
List<JRSaveContributor> savers = new ArrayList<JRSaveContributor>();
for (JRSaveContributor sc : jrViewer.getSaveContributors()) {
savers.add(sc);
}
for (JRSaveContributor sc : savers) {
if (! sc.getClass().getName().toLowerCase().contains("pdf")) {
jrViewer.removeSaveContributor(sc);
}
}
} catch (Exception ex) {
ex.printStackTrace();
}
这不是一个完美的解决方案,但至少它适用于 3.7.1 版的 Jasper Reports。它没有可以与其他版本的系统一起使用的保证,所以我强烈建议任何人使用这个解决方案,除非这是你最后的资源。
关于java - 碧 Jade 报告 : how to customize JasperViewer so that it could only export in one format?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2586579/
我正在创建一个 Java 桌面应用程序。在应用程序中,我使用 dynamic report 生成报告并根据某些参数生成报告。用户生成第一份报告,然后将其显示在 jasper 查看器中。用户最小化 ja
我们知道 Jasper Viewer 需要很多时间来根据将要显示的数据来处理报告。我想处理它,并向用户提供加载信息。这是我的步骤: 检查查看器是否正在处理或已完成。 如果正在处理中,请创建 JLabe
我只是想知道为什么 JasperViewer 只能在本地主机上工作。当我将项目部署到服务器时,客户端无法再查看报告。 String reportDir = getServletContext().ge
我使用 JasperViewer 来显示我的报告,但外观和感觉不是我想要的。 有没有办法改变 JasperViewer 的外观和感觉? 例如,如果您单击保存按钮,我希望在单击打印按钮时具有窗口的外观或
我正在开发基于 Java 桌面的应用程序,使用 Swing 框架和 JasperReports 进行报告。当 JasperViewer 出现并且我想保存报告时,我遇到了一些问题。 如何在保存对话框中设
我只是想知道为什么 JasperViewer 只能在本地主机上运行。当我将项目部署到服务器时,客户端无法再查看报告。 String reportDir = getServletContext().ge
我正在使用 JasperViewer 向用户显示报告,并能够导出为 pdf、word 和 Excel。问题是在保存到 Excel 时出现错误提示: Exception in thread "AWT-E
在我们的项目中,我们创建报告并通过 JasperViewer setVisible(true) 方法将其显示给用户。我们需要能够以编程方式将此文件保存在服务器上(例如 PDF 文件)。问题是我们无法从
这个问题在这里已经有了答案: When a JasperViewer appear and I close it, the main frame/parent also closed [duplic
这是我的代码 static Connection connHealthInfoSystem = DBConnection.conn("health_info_system"); public stat
我有一个报告,基本上是一个带有多个空字段和程序生成的序列号的表单。目前,用户只能按时间获取其中一份,因此我希望用户可以选择所需的副本数量,然后,JasperViewer 在一个窗口中显示所有副本,而不
我使用的是 Netbeans 6.5,对于报告我使用的是 jasper 报告。当我在 jasper 查看器中保存文件时,它不会以 .html 以外的格式保存。 IE。它不会保存在 .pdf 或 .xl
我可以将 JasperReports Viewer 集成到我的 Swing 应用程序中,就像我单击应用程序中的“查看报告”按钮一样,然后应该打开查看器。如果是这样,您可以建议我提供此集成的代码片段吗?
我有一个实现,其中 JasperViewer 用于预览和保存报告。查看器提供的第一个保存格式是 .jrprint,我正在尝试将其更改为 pdf。我正在使用以下方法来帮助我解决这个问题 private
我是 JasperReports 的新手,我想在 Web 应用程序中使用 JasperViewer 获得报告预览。 在 Web 应用程序(没有 PDF 和 XLSX)中这是否可能或任何其他查看方法?
这个问题在这里已经有了答案: How to prevent parent frame closed when closing child frame (Java + iReport)? (1 个回答
我了解到 JasperViewer(JasperReports 的默认预览组件)是一个 Swing 组件,那么有什么方法可以转换或嵌入它在网络应用程序中?有人说我应该使用 Java Web Start
当我在 Netbeans 6.5 中执行项目时,在查看报告(jasper 报告)时,jasperviewer 打开,但未完全打开。并在输出窗口中抛出如下异常: Exception occurred d
我们的客户很喜欢 Jasper 查看器,但我们遇到了问题。它将数据导出为多种不同的格式(PDF、Excel、CSV、HTML 等),但我们的客户只想导出为 PDF。 我们如何自定义 Jasper Vi
我在 Ubuntu 11 上运行此代码时遇到错误: JasperReport jasperReport = JasperCompileManager.compileReport("/resources
我是一名优秀的程序员,十分优秀!