2013-06-21 112 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

相关问题