This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.
[1088CE] JDK1.3rc1-b17 ============== I was editing some AWT Frame. I adjusted the awt.Choice and looking for fiting event which I would like to use... During this the window with warning Request Processor was pop pup and in its detail was this Exception: ------------------------------------------------------------------------------- *********** Exception occurred ************ Thu Aug 31 17:48:44 GMT+02:00 2000java.lang.ArrayIndexOutOfBoundsException: null java.lang.ArrayIndexOutOfBoundsException: 4 >= 3 at java.util.Vector.removeElementAt(Vector.java:535) at javax.swing.MenuSelectionManager.setSelectedPath(MenuSelectionManager .java:79) at javax.swing.MenuSelectionManager.clearSelectedPath(MenuSelectionManag er.java:110) at org.netbeans.core.windows.RegistryImpl.cancelMenu(RegistryImpl.java:2 89) at org.netbeans.core.windows.RegistryImpl.topComponentActivated(Registry Impl.java:191) at org.netbeans.core.windows.WindowManagerImpl.activateComponent(WindowM anagerImpl.java:538) at org.netbeans.core.windows.WorkspaceImpl.setVisible(WorkspaceImpl.java :411) at org.netbeans.core.windows.WindowManagerImpl$IconifyManager.iconify(Wi ndowManagerImpl.java:762) at org.netbeans.core.windows.WindowManagerImpl$IconifyManager.access$0(W indowManagerImpl.java:759) at org.netbeans.core.windows.WindowManagerImpl$1.run(WindowManagerImpl.j ava:747) at org.openide.util.Task.run(Task.java:124) at org.openide.util.RequestProcessor$ProcessorThread.run(RequestProcesso r.java:562) org.openide.util.RequestProcessor$Holder(task org.netbeans.core.windows.WindowMa nagerImpl$1@578ada [-166, 1]) at org.openide.util.RequestProcessor$Task.createHolder(RequestProcessor. java:275) at org.openide.util.RequestProcessor.post(RequestProcessor.java:99) at org.openide.util.RequestProcessor.post(RequestProcessor.java:83) at org.openide.util.RequestProcessor.postRequest(RequestProcessor.java:1 69) at org.netbeans.core.windows.WindowManagerImpl$IconifyManager.windowIcon ified(WindowManagerImpl.java:745) at java.awt.AWTEventMulticaster.windowIconified(AWTEventMulticaster.java :310) at java.awt.AWTEventMulticaster.windowIconified(AWTEventMulticaster.java :310) at java.awt.Window.processWindowEvent(Window.java:804) at javax.swing.JFrame.processWindowEvent(JFrame.java:241) at java.awt.Window.processEvent(Window.java:774) at java.awt.Component.dispatchEventImpl(Component.java:2595) at java.awt.Container.dispatchEventImpl(Container.java:1213) at java.awt.Window.dispatchEventImpl(Window.java:912) at java.awt.Component.dispatchEvent(Component.java:2499) at java.awt.EventQueue.dispatchEvent(EventQueue.java:333) at java.awt.EventDispatchThread.pumpOneEvent(EventDispatchThread.java:10 3) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93) at java.awt.EventDispatchThread.run(EventDispatchThread.java:84) -----------------------------------------------------------------------------
Created attachment 126 [details] IDE log
Yarda, don't you know what may be wrong? You wrote the code and I simply don't know what may cause the trouble. Thanks.
I think that the problem is that some code is accessing swing in non-AWT thread (in request processor). So we should transfer the execution to AWT thread. Question is where? Dafe, should not WorkspaceImpl.setVisible use invokeLater?
I agree, I can fix this. But the problem is bigger - I saw similar situation at least ten times and this leads mne to conclusion that something is bad with request processor. Request processor should allow clients to specify (optionally) that given task will run in AWT. Look at the stack - invoker *knows* that this is some swing operation...
Fixed, iconify code is now called from AWT properly. (I will also add to the same place of code Yarda's further workaround for JKD's problem on KDE soon...)
Marked as Verified OK, it's too old and the problem with new builds dismised
Resolved for 3.4.x or earlier, no new info since then -> closing.