我在试图弄清楚如何在服务器端从 Tomcat 提供的大量 javascript 网页生成 PDF 时遇到问题(应用程序是 Pentaho CE)。内容是响应用户交互的仪表板。Pentaho(应用程序)通过 AJAX 调用用各种内容动态替换 div。我想将用户拥有仪表板的任何状态导出为 pdf。我可以在服务器上放什么没有限制,但我需要避免让客户端安装任何东西。
我看了一下这个,以及一堆其他的 google-fu: JSP/HTML Page to PDF conversion
wkhtmltopdf 似乎是一个流行的选择;在我开始抨击它之前,我有几个问题:
- wkhtmltopdf 可以处理进入由应用程序处理身份验证的受密码保护的 jsps 吗?动态加载的 div 会破坏它吗?
- 有没有办法将客户端视图返回到服务器进行处理?我阅读了有关屏幕捕获的信息...
- 另一个可行的选择是通过服务器托管的 Web 浏览器自动对服务器上的仪表板进行本地访问,并以这种方式生成 PDF ......这可能吗,考虑到 Tomcat 的限制和由处理的密码保护应用程序?Pentaho 生成的 javascript 组件不能在应用程序之外访问。
谢谢!
编辑:
好消息!wkhtmltopdf 有效!有点儿。通过将登录详细信息放入查询字符串中,我通过了密码身份验证,现在我得到了正确页面的 pdf。问题是没有显示任何 javascript 组件......(它们适用于 yahoo.com 之类的页面,所以也许我在这里遗漏了一些东西)。