方老師: 今天調試了您的JDBCUpdateApplet程式.您說在直接用ie開啟RunApplet.html檔案.會在java控制台報java.security.AccessControlException: access denied
(java.lang.RuntimePermission accessClassInPackage.sun.jdbc.odbc) 錯誤.我這裡也出現了這個錯誤提示!根據網上搜尋的有關問題的分析.這是因為applet在沒有被允許的情況下去擷取系統資源.同時,錯誤提示需要一個RuntimePermission,它將使applet去獲得sun.jdbc.odbc 包.所以可以在您系統的java運行時包修改一個關於安全的一檔案.具體做法是:找到您的ie瀏覽器使用的jre包,我家的是:D:/Program Files/Java/jre1.6.0/lib/security,在這個包下面有個java.policy檔案,開啟編輯它:在grant裡增加2個語句:permission java.lang.RuntimePermission "accessClassInPackage.sun.jdbc.odbc";
permission java.util.PropertyPermission "file.encoding", "read"; 再關閉ie,重新運行就可以解決這個問題.我在家裡的機子中,增加以後就沒有在出現上面的錯誤資訊了. 增加第二個語句是因為讓applet能讀一些二進位檔案.不然可能會出現java.security.AccessControlException:
access denied (java.lang.RuntimePermission
file.encoding read)
錯誤. 解決的方案來自於網上的討論:http://java.sun.com/developer/onlineTraining/Programming/BasicJava1/dba.htmlhttp://www.javaworld.com.tw/jute/post/view?bid=29&id=71700&tpg=1&ppg=1&sty=1&age=0這兩個地址是關於這個問題的討論和分析.