【问题标题】:Triggering a web page print from server side从服务器端触发网页打印
【发布时间】:2011-11-03 15:35:02
【问题描述】:
【问题讨论】:
标签:
java
javascript
printing
【解决方案1】:
您无法在客户端执行服务器端代码,因此在浏览器中执行此操作的唯一方法是通过 javascript 或使用 plugins/flash/java 小程序。
您可以使用 java 进行打印,但是 java 需要在客户端上运行。
【解决方案2】:
网站可以要求浏览器打开其打印对话框(例如,Google 地图在“打印路线”页面上执行此操作),但它实际上不能强制浏览器打印任何内容。 (如果可以,您可以确定广告商会使用它在您的打印机上打印广告。)
本地运行且具有足够权限的 Java 应用程序可以打印,就像任何其他桌面应用程序一样。这与网页无关。
【解决方案3】:
不要混淆 Java 和 JavaScript。当尝试在浏览器中使用 Java 时,您必须考虑使用小程序。 Java 小程序绝对可以用来完成通常由富客户端在浏览器中完成的工作。
Java 小程序还可以接收通过套接字或其他机制从服务器发出的事件,尽管我不确定安全限制是否允许这样做。也似乎有点迂回的做事方式。
请记住,网页浏览是由客户端驱动的事情。在某些基础设施中有一些推送模型(我相信使用 JavaServer Faces 是可能的)。但这些可能只是一种由客户端发起的轮询机制,被抽象为看起来像服务器端推送。