我升級我的Java插件1.7.0_25,這引起了一個致命的錯誤有一個applet我幾年前寫的(而且由於一直保持着)。java.util.logger.Logger.getAnonymousLogger()拋出NullPointerException異常
早在applet的init()方法我稱之爲
logger = Logger.getAnonymousLogger();
自從Java 1.4.2這一呼籲已運行沒有問題。現在,使用Java 1.7.0_25(至少在Windows 7上,我沒有Mac或Linux機器可以在這裏測試),第一次加載小程序時,它工作得很好。但是,如果applet的瀏覽器頁面被關閉,頁面再次加載時,小應用程序失敗,出現以下控制檯消息:
basic: Applet loaded.
basic: Applet resized and added to parent container
basic: PERF: AppletExecutionRunnable - applet.init() BEGIN ; jvmLaunch dt 756747 us, pluginInit dt 76093467 us, TotalTime: 76850214 us java.lang.NullPointerException
at java.util.logging.Logger.doSetParent(Unknown Source)
at java.util.logging.Logger.getAnonymousLogger(Unknown Source)
at java.util.logging.Logger.getAnonymousLogger(Unknown Source)
at com.optix.applet.viewer.ObjectViewer.init(ObjectViewer.java:214)
at com.sun.deploy.uitoolkit.impl.awt.AWTAppletAdapter.init(Unknown Source)
at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Ignored exception: java.lang.NullPointerException
再次加載的小程序,我必須關閉並重啓瀏覽器。
這從未與任何以前的Java版本以來發生了java.util.logger程序在Java 1.4中引入的。
應該沒有權限問題:我已經添加到META-INF/MANFEST.MF新屬性
Permissions: all-permissions
Codebase: *
在http://docs.oracle.com/javase/7/docs/technotes/guides/jweb/no_redeploy.html要求。 小程序使用當前的GoDaddy證書進行簽名並加蓋了時間戳。
我發現,如果我創造了記錄儀與
logger = Logger.getLogger(String);
小程序將加載每次。
我可以找到關於此錯誤罷了。有沒有人看過它?有人會知道是什麼導致它與Java 1.7.0_25一起出現,或者爲什麼這個調用會在瀏覽器會話中一次工作,但不是第二次?
提出一個新的錯誤報告,看看Oracle說了些什麼。 –