Abbiamo recentemente aggiornato a Java 7 Update 25 dall'aggiornamento 21 e ora stiamo riscontrando un'eccezione di puntatore nullo quando SwingUtilities.isEventDispatchThread() viene chiamato da un thread rmi perché AppContext.getAppContext () restituisce null.AppContext è nullo dal thread rmi con Java 7 Update 25
java.lang.NullPointerException a sun.awt.SunToolkit.getSystemEventQueueImplPP (Origine Sconosciuta) A sun.awt.SunToolkit.getSystemEventQueueImplPP (Origine Sconosciuta) A sun.awt.SunToolkit.getSystemEventQueueImpl (fonte sconosciuta) a java.awt.Toolkit.getEventQueue (Origine sconosciuta) a java.awt.EventQueue.isDispatchThread (Origine sconosciuta) a javax.swing.SwingUtilities.isEventDispatchThread (Origine sconosciuta) a ... ... a sun.reflect.NativeMethodAccessorImpl.invoke0 (Metodo nativo) a sun.reflect.NativeMethodAcce ssorImpl.invoke (sorgente sconosciuta) a sun.reflect.DelegatingMethodAccessorImpl.invoke (sorgente sconosciuta) a java.lang.reflect.Method.invoke (fonte sconosciuta) a sun.rmi.server.UnicastServerRef.dispatch (sorgente sconosciuta) a sun.rmi.transport.Transport $ 1.run (sorgente sconosciuta) a sun.rmi.transport.Transport $ 1.run (sorgente sconosciuta) a java.security.AccessController.doPrivileged (metodo nativo) a sun.rmi .transport.Transport.serviceCall (Origine sconosciuta) a sun.rmi.transport.tcp.TCPTransport.handleMessages (Origine sconosciuta) a sun.rmi.transport.tcp.TCPTransport $ ConnectionHandler.run0 (Sconosciuto source) a sole .rmi.transport.tcp.TCPTransport $ ConnectionHandler.run (Un noto Source) a java.util.concurrent.ThreadPoolExecutor.runWorker (Sconosciuto Source) a java.util.concurrent.ThreadPoolExecutor $ Worker.run (Sconosciuto Source) a java.lang.Thread.run (fonte sconosciuta)
Questo errore è presente solo dal web start, quando eseguiamo la nostra applicazione attraverso un IDE, va bene.
Qualcun altro si è imbattuto in questo? Qualche idea di cosa è stato modificato nell'ultimo aggiornamento di AppContext?
Sembra altri stanno avendo problemi in qualche modo correlati con AppContext dopo l'aggiornamento: https://forums.oracle.com/message/11077767#11077767
non posso fornire una soluzione, ma abbiamo lo stesso problema con Java 7 Update 25. Abbiamo un'applicazione basata su Swing che è distribuita e avviata con Java Webstart. Funziona anche come server RMI. Quando una chiamata RMI in entrata chiama EventQueue.isDispatchThread, otteniamo la stessa eccezione: sun.awt.AppContext # getAppContext() sembra restituire null in questa situazione. È una regressione seria che rende Java 7 Update 25 inutile per la nostra applicazione. Quando proviamo ad applicare la soluzione alternativa dal Bug 4711515, otteniamo un ulteriore passo avanti. Ma poi il problema Nullpointer in JNLPClassLoader.getPermissions si verifica ... – Holger
Il problema Nullpointer in JNLPClassLoader.getPermissons() è menzionato qui: http://stackoverflow.com/questions/17230773/java-7-update-25-makes-our -java-web-start-application-fail-with-no-logging C'è qualcosa di gravemente sbagliato nella versione di aggiornamento ... – Holger
Abbiamo probabilmente un problema simile qui:. Nella nostra applicazione il client funge anche da server RMI. –