2013-06-21 113 views
1

我升級我的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一起出現,或者爲什麼這個調用會在瀏覽器會話中一次工作,但不是第二次?

+1

提出一個新的錯誤報告,看看Oracle說了些什麼。 –

回答

0

我有完全的Linux同樣的問題。

這是Oracle相關bug report

+0

是的,就是這樣。並且,我在6月24日提交了「JI-9004402 - 來自Applet中的Logger.doSetParent的NullPointerException」,並提供了示例,堆棧跟蹤等。當時,該bug報告發布4天后,仍然沒有列出錯誤數據庫。謝謝。 – Thad

相關問題