Jsf 2 无法访问目标,运行JasperReports 6.0.1时,标识符“xxxBean”解析为null
在我添加代码运行JasperReport之前,我有一个运行良好的应用程序。这个错误是众所周知的Jsf 2 无法访问目标,运行JasperReports 6.0.1时,标识符“xxxBean”解析为null,jsf-2,jasper-reports,Jsf 2,Jasper Reports,在我添加代码运行JasperReport之前,我有一个运行良好的应用程序。这个错误是众所周知的 Target Unreachable, identifier 'studentBean' resolved to null 在添加运行JasperReport所需的代码后,使用该bean StudenBean的特定页面在显示异常之前就开始显示这样的异常。在注释/取消注释代码行的过程之后,我可以分离出导致问题的不精确行。如下图所示: private void gerarRelatorioPDF(Lis
Target Unreachable, identifier 'studentBean' resolved to null
在添加运行JasperReport所需的代码后,使用该bean StudenBean的特定页面在显示异常之前就开始显示这样的异常。在注释/取消注释代码行的过程之后,我可以分离出导致问题的不精确行。如下图所示:
private void gerarRelatorioPDF(List<Student> students, InputStream report, OutputStream pdf) {
JRDataSource jrds = new JRBeanCollectionDataSource(students);
try {
JasperRunManager.runReportToPdfStream(report, pdf, null, jrds); // <<-- Here!!!
} catch (Exception e) {
e.printStackTrace();
}
}
这是从JasperReport定义生成PDF流的行。此方法是私有的,因为它由另一个公共方法调用。public方法是页面中的操作,因此此按钮甚至没有被单击,因为异常阻止页面呈现
如果我对这行代码进行注释,页面呈现ok,我可以单击按钮,但显然不会生成报告
有没有办法修复它?经过一些研究,我决定修改POM.xml Maven脚本,将其包括在内。以前我只在Eclipse中安装了JasperReports 6.0.1插件,创建并配置了报告 当我们向项目中添加新报表时,Eclipse会自动将JasperReports库的路径添加到类路径中,因此项目可以很好地编译,但似乎没有添加其他依赖项,特别是在我的案例JBoss AS 7.1中,没有部署到应用程序服务器 在更新POM.xml以包含JasperReports之后,一切都开始按预期工作