我想使用Java报告的“报告引擎”生成报告(HTML/PDF等)并将其显示在我的网站上。在PHP网站中使用Jasper报告
但是,我的网站正在使用PHP Web框架。任何人都可以建议我怎么能够在PHP Web框架中使用Jasper Reports?
我想使用Java报告的“报告引擎”生成报告(HTML/PDF等)并将其显示在我的网站上。在PHP网站中使用Jasper报告
但是,我的网站正在使用PHP Web框架。任何人都可以建议我怎么能够在PHP Web框架中使用Jasper Reports?
您将需要在php中构建/查找Java解释器。或者更现实的是,从PHP执行exec()
编辑
问Java或共享一个数据库连接,创造互相通信的表格。它有一些很好的可扩展性点。
如果checkout the PHP REST Client on Github,或者通过作曲家添加到您的PHP项目,你就可以通过网络服务来运行报告。
你的代码应该是这个样子:
<?php
$c = new \Jaspersoft\Client\Client(
"http://localhost:8080/jasperserver-pro",
"jasperadmin",
"jasperadmin",
"organization_1"
);
$report = $c->reportService()->runReport('/reports/samples/AllAccounts', 'html');
echo $report;
?>
这将检索HTML格式的报告,并将其存储在$report
。当然,您可以将html更改为pdf或xls或您希望导出到的任何格式。
如果您希望显示PDF或将其提供下载,您必须将二进制数据提供给某个可以处理它的包,或者提供适当的头允许它通过Web浏览器下载。
我恰好是开发这个软件包的人,所以请随时为我解答任何问题。
我曾尝试使用相同的步骤,但得到像Jaspersoft \ Exception \ RESTRequestException错误:服务器返回意外的HTTP状态代码 – 2016-03-29 05:54:18
我更喜欢这种方法,我成功地在项目中使用它。考虑到它是一个具有256 MB RAM(其中大部分由数据库使用)的小型VM,我不想使用Tomcat或任何成熟的Web容器,因此我使用PHP/Java Bridge:`java -Djava.ext.dirs =。 -Jar JavaBridge.jar SERVLET_LOCAL:8081 3 JavaBridge.log`使用_java.ext.dirs_是我发现使用外部JAR的唯一方法(在本例中为_JavaBridge.jar_的本地目录“。”)。在我使用** java_require **之前,它现在不被最新的PJB版本所支持。 – Kamal 2012-09-26 20:07:56