2012-06-13 101 views
1

七年前,我为VB6开发了一个独立的医疗通道中心应用程序。有一个强制性的要求,打印一个小尺寸(219毫米至140毫米),只需单击一下,没有打印对话框。间歇性地,他们需要从不同的打印机将报告送至完整的A4页面。在Java Web应用程序中打印

这可以很容易地在VB6中实现,将印刷和纸张属性设置为变量。现在,该中心希望将其转换为Web应用程序,但事先要确保可以在此类Web应用程序中实现打印功能。他们希望每次都不带打印机对话框。

是否可以在不使用打印机对话框的情况下使用Java EE更改Web应用程序中的打印机和纸张属性? (至少在贾斯珀报告等的支持下)

+0

在最坏的情况下,您可以调用Java的VB6可执行文件。 – zneak

+0

如果您打算让Java服务器将它发送给打印机,您应该查看打印包:http://docs.oracle.com/javase/1.4.2/docs/api/javax/print/package -summary.html 如果浏览器应该这样做,我不知道。 –

回答

4

这是可能的;但是,您需要记住哪些应用程序将被打印。

如果是打印网页的网络浏览器,那么您就不好运气了,因为网络浏览器已经被编码,并且将完成它始终会执行的操作。

如果是嵌入网页内的应用程序,只要应用程序可以连接到客户机的打印资源,这是可能的;然而,通常这样的任务意味着应用程序作为远程机器(Web服务器)被信任,现在正在使用本地资源(客户端磁盘和打印配置)。您可能需要预先配置机器以提升应用程序的信任级别,否则您可能会弹出一个声明远程机器(Web服务器)尝试使用本地资源的弹出窗口。

如果它是一个多层应用程序,并且Web服务器从Web应用程序接收到打印请求,则Web服务器将执行打印。 Web服务器相信自己;但是,它的环境可能完全不同。根据其余的网络体系结构和安全策略,它可能有权访问或无法连接到附近的打印机。