【问题标题】:Jasper report image pathsJasper 报告图像路径
【发布时间】:2011-11-08 15:54:49
【问题描述】:

我想在我的 jasper 报表、swing 应用程序中插入图像。所有图像都在一个包中。我想在jasper报告中设置图像的路径。也就是说,设置项目图像的路径。当整个项目位置发生变化时,会出现一个异常说没有找到图像。请告诉我如何设置图像路径。

项目结构: 我的项目
|-源码包

源码包下
|-Images // 我的图片在这里
|-Reports // 我的碧玉报告在哪里
|-MyJFrames |

【问题讨论】:

  • 你能添加更多细节,比如你的项目结构和异常吗?

标签: java swing jasper-reports


【解决方案1】:

你没有发布很多细节,但我在使用 Jasper Report 处理绝对/相对路径时遇到了类似的问题。

Jasper Report 无法设置或使用项目资源(子报告、图像等)的相对路径,尤其是在您正在编译时使用 IREPORT 设计器工具生成报告。

我正在使用 jasper 报告和 IREPORT 4.1.1,每次我将 JRXML 编译为 .jasper 文件时,我的路径都是绝对的。当整个项目被移动到另一台机器上时,这会导致“破坏”。为了使用我的报告的相对路径,我必须通过编程方式编译报告,即在我的 Java 应用程序中。简而言之,我使用的 java 实用程序方法读取 JRXML 文件并将绝对路径替换为相对路径,然后编译报告。

看看这个论坛,它有一些不同的答案。

http://forums.devshed.com/java-help-9/relative-path-for-subreport-in-jasperreport-309313.html

【讨论】:

  • 谢谢你,这正是我所需要的。
  • @Aash:您可以通过点击左侧的empty check mark 来接受这个答案。
  • 我在我的 Swing 应用程序中尝试了所有这些示例。当项目在netbean中运行时,它可以工作。但是当 .jar 运行时,会出现异常 net.sf.jasperreports.engine.JRException: Byte data not found at : C:\Users\Dhanu shka\file:\D:\Projects\MyBizProjects\fin\dist\SSM.jar!\Reports\background.png 。我也尝试发送绝对路径。但没有用。请任何人告诉我如何在摇摆应用程序中做到这一点
  • @Aash 尝试将图像文件夹放在您的类路径中。这里描述的方式:coderanch.com/t/63485/open-source/…
  • 谢谢,但在我的摇摆应用程序中......我的图像可能在哪里?作为forums.devshed.com/java-help-9/…,以及它的第一个解决方案,我将图像放在 .jasper 所在的同一个文件夹中。但是没有用。我是新来的。你能告诉我更多吗?
【解决方案2】:

我也遇到了和你一样的问题。要解决此问题,请使用硬编码路径值。您必须创建一个参数,您可以将图像位置传递给该参数,然后在图像表达式中使用此参数。 我在post 中找到了解决方案。

【讨论】:

    【解决方案3】:

    对于图像和子报表路径是必需的。 我在默认提示中使用 ./ 从我将所有内容保存在单个文件夹中的任何地方工作。 SUBREPORT_DIR 如果不同元素的位置不同,则必需的路径相同,那么您必须通过参数部分作为上述帖子。 也请检查他的链接。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多