我们的Java应用程序是通过Java Web Start(带有glassfish 4.0)启动的。 更新到Java 7u45后,它不再起作用。 这是错误消息:
java.lang.NullPointerException
at java.io.StringReader.(Unknown Source)
at org.glassfish.appclient.client.JWSAppClientContainerMain.insertMaskingLoader(JWSAppClientContainerMain.java:186)
at org.glassfish.appclient.client.JWSAppClientContainerMain.main(JWSAppClientContainerMain.java:132)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.sun.javaws.Launcher.executeApplication(Unknown Source)
at com.sun.javaws.Launcher.executeMainClass(Unknown Source)
at com.sun.javaws.Launcher.doLaunchApp(Unknown Source)
at com.sun.javaws.Launcher.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
下载完成后立即发生这种情况。 快速浏览GF源文件后,似乎未定义属性loader.config因为第二行引发了NPE:
final String loaderConfig = System.getProperty("loader.config");
StringReader sr = new StringReader(loaderConfig);
EDIT上述其中NPE发生两个代码行是Glassfish的代码,从类JWSAppClientContainerMain在罐子gf-client-module.jar 。 它一直工作到Java更新45。