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.
Build: NetBeans IDE 6.0 RC1 (Build 200711131200) VM: Java HotSpot(TM) Client VM, 1.6.0_05-ea-b06 OS: Windows XP, 5.1, x86 User comments: This seem to occur when creating a project from sources which already has a manifest.mf in its project directory [IMO Netbeans should be capable of using that file rather than creating a new one] STACKTRACE: (first 10 lines) java.lang.IllegalThreadStateException: must be called in EQ at org.netbeans.spi.java.project.support.ui.IncludeExcludeVisualizer.getVisualizerPanel(IncludeExcludeVisualizer.java:197) at org.netbeans.modules.java.j2seproject.ui.wizards.PanelIncludesExcludes.getComponent(PanelIncludesExcludes.java:68) at org.openide.WizardDescriptor.updateStateOpen(WizardDescriptor.java:774) at org.openide.WizardDescriptor.updateState(WizardDescriptor.java:720) at org.openide.loaders.TemplateWizard.updateState(TemplateWizard.java:738) at org.netbeans.modules.project.ui.NewProjectWizard.updateState(NewProjectWizard.java:67) at org.openide.WizardDescriptor.updateStateWithFeedback(WizardDescriptor.java:897) at org.openide.WizardDescriptor.access$1400(WizardDescriptor.java:119) at org.openide.WizardDescriptor$Listener$2$1.run(WizardDescriptor.java:1916) at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:561)
The Wizard API calls WizardDescriptor.Panel.getComponent() in not Event Thread, which is very strange. The caller is supposed to create swing component => has to be in event thread, calling SwingUtilities.invokeAndWait is very dangerous.
Tomas, the Javadoc of WD.P.getComponent() says: * Note; method can be called from any thread, but not concurrently * with other methods of this interface. Please see complete guide at thus I don't think I should change WD behavior now. This class is very in wide usage and all possible changes are risky. Anyway, this problem has no known duplicate and I'm not able to reproduce by description => decrease the priority.
Nice try. getComponent method should return the Component which has to be somehow constructed, but you are not allowed to construct the Component outside the AWT thread, you will need to create the component before, probably in the WizardIterator (if you hava luck and you are in AWT thread), but this will make Wizard incredibly slow.
I am a bit confused: the Javadoc for getComponent refers to: http://performance.netbeans.org/howto/dialogs/wizard-panels.html which clearly recommends to construct the component the first time "getComponent" method is called. It is obviously not possible to construct the component outside the AWT Event Dispatch Thread. What is the recommended implementation of the getComponent method, if it is supposed to create the component lazily, but if it may be called outside AWT Thread?
This no longer seem to occur in NB 6.1 RC
*** Issue 139153 has been marked as a duplicate of this issue. ***
fixed in rev/0da9e77846b8
Integrated into 'main-golden', will be available in build *200810240201* on http://bits.netbeans.org/dev/nightly/ (upload may still be in progress) Changeset: http://hg.netbeans.org/main/rev/0da9e77846b8 User: Jiri Rechtacek <jrechtacek@netbeans.org> Log: #122184: IllegalThreadStateException: must be called in EQ
*** Issue 162254 has been marked as a duplicate of this issue. ***