Niedawno zaktualizowaliśmy do wersji Java 7 Update 25 z aktualizacji 21 i mamy teraz wyjątek wskaźnika pustego, gdy wywoływana jest funkcja SwingUtilities.isEventDispatchThread() z wątku rmi, ponieważ AppContext.getAppContext () zwraca zero.AppContext ma wartość null z wątku rmi z Java 7 Update 25
java.lang.NullPointerException na sun.awt.SunToolkit.getSystemEventQueueImplPP (Unknown Source) w sun.awt.SunToolkit.getSystemEventQueueImplPP (Unknown Source) w sun.awt.SunToolkit.getSystemEventQueueImpl (Unknown Source) w java.awt.Toolkit.getEventQueue (Unknown Source) w java.awt.EventQueue.isDispatchThread (Unknown Source) w javax.swing.SwingUtilities.isEventDispatchThread (Unknown Source) w ... ... w sun.reflect.NativeMethodAccessorImpl.invoke0 (Native Method) at sun.reflect.NativeMethodAcce ssorImpl.invoke (Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke (Unknown Source) at java.lang.reflect.Method.invoke (Nieznane źródło) pod sun.rmi.server.UnicastServerRef.dispatch (Nieznane źródło) pod numerem sun.rmi.transport.Transport $ 1.run (nieznane źródło) pod numerem sun.rmi.transport.Transport $ 1.run (nieznane źródło) pod adresem java.security.AccessController.doPrivileged (metoda macierzysta) pod adresem sun.rmi .transport.Transport.serviceCall (Unknown source) na sun.rmi.transport.tcp.TCPTransport.handleMessages (Unknown source) w sun.rmi.transport.tcp.TCPTransport $ ConnectionHandler.run0 (nieznane Źródło) na słońcu .rmi.transport.tcp.TCPTransport $ ConnectionHandler.run (Un Wiadomo Source) na java.util.concurrent.ThreadPoolExecutor.runWorker (nieznane Źródło) na java.util.concurrent.ThreadPoolExecutor $ Worker.run (nieznane Źródło) na java.lang.Thread.run (Unknown Source)
Ten błąd występuje tylko w Internecie, gdy uruchamiamy naszą aplikację za pośrednictwem IDE, jest w porządku.
Czy ktoś inny wpadł na to? Czy wiesz, co zmieniło się w najnowszej aktualizacji dotyczącej AppContext?
Wydaje inni mają nieco podobnych problemów z AppContext po aktualizacji: https://forums.oracle.com/message/11077767#11077767
nie mogę zapewnij rozwiązanie, ale mamy ten sam problem z aktualizacją Java 7 Update 25. Mamy aplikację opartą na Swing, która jest rozprowadzana i uruchamiana za pomocą Java Webstart. Działa również jako serwer RMI. Gdy przychodzące wywołanie RMI wywołuje EventQueue.isDispatchThread, otrzymujemy ten sam wyjątek: sun.awt.AppContext # getAppContext() wydaje się zwracać wartość null w tej sytuacji. To poważna regresja, która sprawia, że Java 7 Update 25 jest bezużyteczna dla naszej aplikacji. Podczas próby zastosowania obejścia z błędu 4711515 otrzymujemy kolejny krok. Ale wtedy pojawia się problem Nullpointer w JNLPClassLoader.getPermissions ... – Holger
Problem Nullpointer w JNLPClassLoader.getPermissons() jest wymieniony tutaj: http://stackoverflow.com/questions/17230773/java-7-update25-makes-our -java-web-start-application-fail-with-no-logging Jest coś poważnie złego w wydaniu aktualizacji ... – Holger
Mamy prawdopodobnie podobny problem:. W naszej aplikacji klient działa również jako serwer RMI. –