2011-02-09 47 views
3

您好管理爲我的Java應用程序創建jar和.jnlp文件,但運行時遇到麻煩。啓動Java Web Start,但我想我需要額外執行一些額外的操作,當我運行它時,它不會要求訪問HD以獲取文件I/O的權限。Java - 如何獲得Java Web Start的權限

希望得到一些幫助,並建議知道該怎麼做才能獲得許可權利,即我必須做什麼是我必須做的事情,我所有的類不知道。我在Java Web Start中獲得的錯誤 如下。

Exception in thread "AWT-EventQueue-0" java.security.AccessControlException: 
    access denied (java.io.FilePermission StockDatabase;Stocks.dat read) 
    at java.security.AccessControlContext.checkPermission(Unknown Source) 
    at java.security.AccessController.checkPermission(Unknown Source) 
    at java.lang.SecurityManager.checkPermission(Unknown Source) 
    at java.lang.SecurityManager.checkRead(Unknown Source) 
    at java.io.File.exists(Unknown Source) 
    at StockCodeDatabase.<init>(OptraderSA.java:782) 
    at OptraderSA.actionPerformed(OptraderSA.java:136) 
    at javax.swing.AbstractButton.fireActionPerformed(Unknown Source) 
    at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source) 
    at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source) 
    at javax.swing.DefaultButtonModel.setPressed(Unknown Source) 
    at javax.swing.AbstractButton.doClick(Unknown Source) 
    at javax.swing.plaf.basic.BasicMenuItemUI.doClick(Unknown Source) 
    at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(Unkno 

回答

7

您需要登錄您的JNLP文件和配置<security>元素,如討論here

+0

嗨Trojanfoe thansk你的幫助 - 再次!按adnans和Trashgod的建議添加元素,但仍然無法運行我如何簽署我的JNLP? – Kurt 2011-02-09 16:36:52

+0

@Kurt:我的榮幸。看看這個:http://download.oracle.com/javase/tutorial/deployment/jar/signindex.html – trojanfoe 2011-02-09 16:37:45

6

以下內容添加到您的JNLP:

<security> 
    <all-permissions/> 
</security> 

此時會彈出一個對話框,詢問的給予必要的許可,您的應用程序用戶。

1

如果你想獲得你需要改變你的JNLP文件,包括文件系統:

<security><all-permissions/></security> 

這就需要你也簽上你的jar文件。

另一種選擇是將文件內部的文件打包爲資源,而不必執行所有操作。