2012-06-13 139 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服務器相信自己;但是,它的環境可能完全不同。根據其餘的網絡體系結構和安全策略,它可能有權訪問或無法連接到附近的打印機。