2012-01-05 71 views
0

我目前有一個財務計算器小程序,根據用戶請求生成爲用戶計算的信息的PDF。生成時,PDF將在本地創建,並且JFileChooser允許用戶將PDF移動到他們選擇的機器上的目的地。在Java Applet中生成/下載文檔

JFileChooser需要證書才能運行。作爲JFileChooser的替代方案並對applet進行簽名,我可以做些什麼來將PDF傳遞給用戶?

回答

2

從官方Java Applet tutorial

當USI推出NG JNLP,小程序未簽名還可以執行 以下操作:

* They can open, read, and save files on the client. 

檢查this出作爲一個例子。

如果你必須堅持傳統的applet,你應該簽署jar,即使這意味着自簽名(我認爲在這種情況下顯示警告,但用戶可以繼續)。

+0

另請參閱此[演示。的JNLP API文件服務](http://pscode.org/jws/api.html#fs)。 – 2012-01-05 16:20:24

+0

該applet沒有執行試圖訪問文件系統的代碼,但是在自簽名之後,它現在可以執行。 – unmuse 2012-01-05 17:54:18

0

使用此方法:

URL url = new URL(getCodeBase().getProtocol(), 
         getCodeBase().getHost(), 
         getCodeBase().getPort(), 
         "/your_pdf_file"); 

getAppletContext().showDocument(url); 

它只會提示用戶下載文件或查看其內嵌

編輯:這如果服務器生成PDF,而不是客戶端是唯一有用的Applet的

+0

根據問題,PDF由applet創建並且不存儲在服務器上。 – egbokul 2012-01-05 16:14:14

+0

我誤以爲在業主服務器本地,我的壞。 – Araejay 2012-01-05 16:27:30