看板 java 關於我們 聯絡資訊
昨天回文時 ptt 速度太慢, 亂按了一些鍵之後就放著沒動了, 沒想到居然還發出去了 Orz ※ 引述《tjpu4 (香吉蒜)》之銘言: : ※ 引述《tkcn (小安)》之銘言: : : 找不到 class: javax/comm/CommPortIdentifier : : comm.jar 呢? : 不好意思 我放成comm.jar的捷徑了 其實我昨天這樣回答有一點誤導, 雖然錯誤訊息是因為 comm.jar, 但即使放了正確的 library, 這支 applet 程式還是無法執行。 : 所以現在 Java主控台的錯誤訊息就跟appletviewer顯示的錯誤訊息類似了(見下) : 那想請問的是 : "Caused by...."的錯誤訊息是代表什麼意思呢? : java.lang.ExceptionInInitializerError : at TransmitterApplet.init(TransmitterApplet.java:25) : at sun.applet.AppletPanel.run(Unknown Source) : at java.lang.Thread.run(Unknown Source) : Caused by: java.security.AccessControlException: access denied (java.util.PropertyPermission javax.comm.properties read) 存取被拒絕,原因就是 sandbox applet 是用於網頁上的小程式, 基於安全理由,它不允許你做任何的 IO 操作, (存取本機電腦 及 網路連線...等,只有網頁 server 例外) 否則一旦開了惡意的 applet, 電腦就如同中了木馬一般。 sandbox 的概念就是, 只允許你在盒子裡面操作, 所以無論你在盒子裡做了什麼事, 都不會影響到盒子外的世界。 如果有特殊的需求, 可以使用 sign applet, 再開啟程式前會先出現確認視窗, 待使用者同意後, 程式便能夠有較高的存取權限。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.114.78.239