2013-10-07 17 views
0

我的代碼就像getWaitMessageBox()。setAlwaysOnTop(true);.如何在策略文件中設置java.awt.awtpermission?

這將引發

java.security.AccessControlException:在訪問被拒絕java.security.AccessController(java.awt.AWTPermission運輸及工務局局長 indowAlwaysOnTop) 在java.security.AccessControlContext.checkPermission(來源不明) 。的checkPermission(來源不明) 在java.lang.SecurityManager.checkPermission(來源不明) 在java.awt.Window.setAlwaysOnTop(來源不明)

所以我需要設置的AWTPermission在我的政策文件「setAlwaysOnTop」 。

如何將此項添加到我的政策文件中?

回答

1

"Default Policy Implementation and Policy File Syntax"解釋了策略文件的語法。語法是here

"Permissions in Java™ SE 7 Development Kit (JDK)"文檔列出了所有的標準權限。 AWT的權限列於here

從這些我們可以推斷出如下權限應設置:

permission java.awt.AWTPermission "setWindowsAlwaysOnTop"; 

的權限目標由javadoc證實。

+0

這樣對嗎?權限java.awt.awtPermission setAlwaysOnTop;我相信目標是錯誤的。如何爲此設置目標? – Karthik

+0

非常感謝。我在新創建的文件中添加了上述行。在我添加的eclipse VM參數中,-Djava.security.manager -Djava.security.policy = test.policy。文件位於我的基本目錄中。但它沒有任何影響?我的文件位置是否正確? – Karthik

+0

@Karthik - 我不知道。嘗試使用文件的絕對路徑名。 –