當我嘗試啓動我的小程序時出現錯誤SecurityException Permission denied: file:/d:/Notes/Notes.jar
。預加載2個罐子時Java Applet權限被拒絕
我需要在我的小程序,使用2瓶:
- Applet.jar - 罐子存儲applet的代碼(JAR簽名並正常工作)
- Notes.jar文件 - 這是一個庫它允許使用Lotus Notes 數據庫。
第一個jar從服務器加載,第二個應該從用戶的筆記本電腦(保存在運行applet的筆記本電腦上的本地文件)加載。
我使用的HTML代碼:
<APPLET CODE = "com.example.AppletClass" WIDTH = 640 HEIGHT = 480
archive="Applet.jar,file:///${user.apiPath}">
<PARAM NAME = "db_path" VALUE ="${user.dbPath}">
<PARAM NAME = "view_name" VALUE ="${user.viewName}">
Your browser doesn't support applets
</APPLET>
問題是在該行:存檔= 「Applet.jar,文件:/// $ {} user.apiPath」
${user.apiPath} = d:/Notes/Notes.jar
第二個jar無法加載。但如果我將第二個jar移動到服務器並將其加載到客戶端的筆記本電腦,一切正常。
不幸的是,這個解決方案對我來說不是很好。
有沒有可能從不同的地方加載2個罐子:服務器和本地?
*「第一個jar從服務器加載,第二個應該從用戶的筆記本電腦加載」*爲什麼地球上不會從服務器提供第二個jar? – 2012-07-26 03:46:45
第二個jar是特定於版本的,所以我需要從用戶的筆記本電腦獲取正確的jar。 的Lotus Notes 7的罐子不與Lotus工作註釋8.5 的Lotus Notes 8.5的jar與Lotus Notes 7 – 2012-07-26 06:16:25
我想你反而應該提供7版本與8.5不同的小應用程序的頁面無法正常工作,並添加適當的罐子每。或者更好的是,完全丟失applet,將GUI放在一個框架中,並使用[Java Web Start](http://stackoverflow.com/tags/java-web-start/info)直接從鏈接啓動它。您可以將兩個Jars添加爲懶惰加載,因爲應用程序的不同下載「部分」 - 通過編程控制爲用戶緩存哪個Jar。請注意,我懷疑你目前的做法總是有問題。 JRE旨在保護用戶,並且不喜歡分割代碼庫。 – 2012-07-26 08:42:11