我们使用JasperReports
作为报告工具。早些时候我们使用相对路径
用于填写报告的jasper文件,它工作正常。
现在,我们要为所有已编译的jrxml
文件创建一个新jar。即包含我们项目的所有.jasper
个文件的jar。
有没有办法在填充报告时访问jar文件中的.jasper
个文件。因为在文档中,我总是看到
fillReport(java.lang.String sourceFileName, java.util.Map params)
其中,sourcefile始终是文件系统上的路径。
我的问题是,有没有办法访问jar文件中存在的已编译.jasper
文件
并根据这些文件填写报告?
修改
基本上需要的是,我需要从jar文件中访问.jasper
个文件,然后使用该.jasper
文件填充报告,并将生成的报告保存到文件系统中。
答案 0 :(得分:3)
大多数值得使用的API都会提供重载方法来接受输入流。例如。 JasperFillManager.fillReport(InputStream, Map)
要进入InputStream
,请使用Class.getResourceAsStream()
。