2012-03-14 24 views
2

我有一個簡單的java applet,它從服務器檢索圖像並將其打印出來。唯一的問題是,我得到了下面的Java安全警告:Java Applet打印對話框不會消失

error message

研究在本網站和所有網站上,有人建議我簽名Applet(我試過,沒有用)等建議我Modify a local java security setting但這對我的客戶是不可行的。

我不僅在我的小程序開始時得到此警告,但似乎任何時候代碼嘗試與打印機交互,對話框都會重新出現。另請注意,「始終允許此小程序訪問打印機」旁邊沒有複選框。這些症狀顯示在任何瀏覽器上。

如何讓java尊重用戶的選擇以允許它將作業發送到打印機?

+0

謝謝安德魯。我確認該小程序已正確簽名並簽名。我對jnlp不是很熟悉,但我不相信它能滿足我的需求,因爲我需要在網頁中發生這種情況,而不是用戶點擊某個東西來啓動外部工具。 – theycallmemorty 2012-03-14 20:31:37

+0

安德魯!謝謝你的幫助!使用JNLP確實是解決這個問題的方法。隨意將您的答案作爲「答案」下面,我會選擇它作爲最好的答案。 – theycallmemorty 2012-03-15 17:47:43

回答

2

您可以在插件2 JRE中的沙盒小程序中使用JNLP API服務。他們每次第一次打印時都會提示用戶,但也應該在對話框上放置一個「始終允許」複選框(儘管它只適用於該運行)。看到一個demo. of the PrintService

另請參閱applet info. page,其中包含下一代Applet Java插件技術的鏈接,該鏈接「..爲applet帶來新功能:例如...允許嵌入式applet獲得對Java Web服務的完全訪問權限開始。」