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.

Bug 177747 - "Add Java Platform" state change problem
Summary: "Add Java Platform" state change problem
Status: RESOLVED FIXED
Alias: None
Product: javacard
Classification: Unclassified
Component: Java Card (show other bugs)
Version: 6.x
Hardware: PC Windows Vista
: P4 normal (vote)
Assignee: _ tboudreau
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-11-27 06:11 UTC by dkuzmin
Modified: 2009-12-07 10:51 UTC (History)
0 users

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description dkuzmin 2009-11-27 06:11:38 UTC
In "Java Platform Manager" click "Add Platform".
Select "Java Card Platfrom", click "next".
Select Java Card SDK directory in "Choose Platform Folder" window, click "back".
Select "Java Standard Edition" from list, then "Java Card Platform" again, click "next"
Select Java Card SDK directory in "Choose Platform Folder" window, click "next".
Exception:

java.lang.NullPointerException: index: 2
	at org.netbeans.modules.java.platform.wizard.PlatformInstallIterator.current(PlatformInstallIterator.java:130)
	at org.openide.WizardDescriptor.updateStateOpen(WizardDescriptor.java:877)
	at org.openide.WizardDescriptor.updateState(WizardDescriptor.java:851)
	at org.openide.WizardDescriptor.goToNextStep(WizardDescriptor.java:1062)
	at org.openide.WizardDescriptor.access$1200(WizardDescriptor.java:127)
	at org.openide.WizardDescriptor$Listener$1.run(WizardDescriptor.java:2019)
	at org.openide.WizardDescriptor.lazyValidate(WizardDescriptor.java:1470)
	at org.openide.WizardDescriptor.access$1300(WizardDescriptor.java:127)
	at org.openide.WizardDescriptor$Listener.actionPerformed(WizardDescriptor.java:2038)
Caused: java.lang.reflect.InvocationTargetException
	at sun.reflect.GeneratedMethodAccessor51.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.openide.util.WeakListenerImpl$ProxyListener.invoke(WeakListenerImpl.java:451)
Caused: java.lang.reflect.UndeclaredThrowableException
	at $Proxy17.actionPerformed(Unknown Source)
	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
	at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
	at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
	at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
	at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
	at java.awt.Component.processMouseEvent(Component.java:6216)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3265)
	at java.awt.Component.processEvent(Component.java:5981)
	at java.awt.Container.processEvent(Container.java:2041)
	at java.awt.Component.dispatchEventImpl(Component.java:4583)
	at java.awt.Container.dispatchEventImpl(Container.java:2099)
	at java.awt.Component.dispatchEvent(Component.java:4413)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4556)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4220)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4150)
	at java.awt.Container.dispatchEventImpl(Container.java:2085)
	at java.awt.Window.dispatchEventImpl(Window.java:2475)
	at java.awt.Component.dispatchEvent(Component.java:4413)
[catch] at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
	at org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:125)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:178)
	at java.awt.Dialog$1.run(Dialog.java:1051)
	at java.awt.Dialog$3.run(Dialog.java:1103)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.awt.Dialog.show(Dialog.java:1101)
	at org.netbeans.core.windows.services.NbPresenter.superShow(NbPresenter.java:985)
	at org.netbeans.core.windows.services.NbPresenter.doShow(NbPresenter.java:1019)
	at org.netbeans.core.windows.services.NbPresenter.run(NbPresenter.java:1007)
	at org.netbeans.core.windows.services.NbPresenter.run(NbPresenter.java:115)
	at org.openide.util.Mutex.doEventAccess(Mutex.java:1355)
	at org.openide.util.Mutex.readAccess(Mutex.java:268)
	at org.netbeans.core.windows.services.NbPresenter.show(NbPresenter.java:992)
	at java.awt.Component.show(Component.java:1516)
	at java.awt.Component.setVisible(Component.java:1468)
	at java.awt.Window.setVisible(Window.java:841)
	at java.awt.Dialog.setVisible(Dialog.java:991)
	at org.netbeans.modules.java.platform.ui.PlatformsCustomizer.addNewPlatform(PlatformsCustomizer.java:342)
	at org.netbeans.modules.java.platform.ui.PlatformsCustomizer.access$000(PlatformsCustomizer.java:90)
	at org.netbeans.modules.java.platform.ui.PlatformsCustomizer$1.actionPerformed(PlatformsCustomizer.java:201)
	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
	at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
	at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
	at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
	at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
	at java.awt.Component.processMouseEvent(Component.java:6216)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3265)
	at java.awt.Component.processEvent(Component.java:5981)
	at java.awt.Container.processEvent(Container.java:2041)
	at java.awt.Component.dispatchEventImpl(Component.java:4583)
	at java.awt.Container.dispatchEventImpl(Container.java:2099)
	at java.awt.Component.dispatchEvent(Component.java:4413)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4556)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4220)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4150)
	at java.awt.Container.dispatchEventImpl(Container.java:2085)
	at java.awt.Window.dispatchEventImpl(Window.java:2475)
	at java.awt.Component.dispatchEvent(Component.java:4413)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
	at org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:125)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:178)
	at java.awt.Dialog$1.run(Dialog.java:1051)
	at java.awt.Dialog$3.run(Dialog.java:1103)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.awt.Dialog.show(Dialog.java:1101)
	at org.netbeans.core.windows.services.NbPresenter.superShow(NbPresenter.java:985)
	at org.netbeans.core.windows.services.NbPresenter.doShow(NbPresenter.java:1019)
	at org.netbeans.core.windows.services.NbPresenter.run(NbPresenter.java:1007)
	at org.netbeans.core.windows.services.NbPresenter.run(NbPresenter.java:115)
	at org.openide.util.Mutex.doEventAccess(Mutex.java:1355)
	at org.openide.util.Mutex.readAccess(Mutex.java:268)
	at org.netbeans.core.windows.services.NbPresenter.show(NbPresenter.java:992)
	at java.awt.Component.show(Component.java:1516)
	at java.awt.Component.setVisible(Component.java:1468)
	at java.awt.Window.setVisible(Window.java:841)
	at java.awt.Dialog.setVisible(Dialog.java:991)
	at org.netbeans.api.java.platform.PlatformsCustomizer.showCustomizer(PlatformsCustomizer.java:72)
	at org.netbeans.modules.java.platform.ui.PlatformsCustomizerAction.actionPerformed(PlatformsCustomizerAction.java:46)
	at org.openide.awt.AlwaysEnabledAction$1.run(AlwaysEnabledAction.java:139)
	at org.netbeans.modules.openide.util.ActionsBridge.implPerformAction(ActionsBridge.java:83)
	at org.netbeans.modules.openide.util.ActionsBridge.doPerformAction(ActionsBridge.java:67)
	at org.openide.awt.AlwaysEnabledAction.actionPerformed(AlwaysEnabledAction.java:142)
	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
	at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
	at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
	at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
	at javax.swing.AbstractButton.doClick(AbstractButton.java:357)
	at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:1225)
	at javax.swing.plaf.basic.BasicMenuItemUI$Handler.menuDragMouseReleased(BasicMenuItemUI.java:1329)
	at javax.swing.JMenuItem.fireMenuDragMouseReleased(JMenuItem.java:568)
	at javax.swing.JMenuItem.processMenuDragMouseEvent(JMenuItem.java:465)
	at javax.swing.JMenuItem.processMouseEvent(JMenuItem.java:411)
	at javax.swing.MenuSelectionManager.processMouseEvent(MenuSelectionManager.java:306)
	at javax.swing.plaf.basic.BasicPopupMenuUI$MouseGrabber.eventDispatched(BasicPopupMenuUI.java:817)
	at java.awt.Toolkit$SelectiveAWTEventListener.eventDispatched(Toolkit.java:2353)
	at java.awt.Toolkit$ToolkitEventMulticaster.eventDispatched(Toolkit.java:2245)
	at java.awt.Toolkit.notifyAWTEventListeners(Toolkit.java:2203)
	at java.awt.Component.dispatchEventImpl(Component.java:4481)
	at java.awt.Container.dispatchEventImpl(Container.java:2099)
	at java.awt.Component.dispatchEvent(Component.java:4413)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4556)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4220)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4150)
	at java.awt.Container.dispatchEventImpl(Container.java:2085)
	at java.awt.Window.dispatchEventImpl(Window.java:2475)
	at java.awt.Component.dispatchEvent(Component.java:4413)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
	at org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:125)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

NetBeans: netbeans-trunk-nightly-200911261400-ml-javase-windows.exe, plugin
build #5.
Comment 1 _ tboudreau 2009-11-27 14:17:11 UTC
Fixed in main/ cf56ca95f166
Comment 2 Quality Engineering 2009-11-28 03:22:40 UTC
Integrated into 'main-golden', will be available in build *200911280200* on http://bits.netbeans.org/dev/nightly/ (upload may still be in progress)
Changeset: http://hg.netbeans.org/main/rev/cf56ca95f166
User: tboudreau@netbeans.org
Log: #177747 - index problem in platform install wizard iterator
Comment 3 dkuzmin 2009-12-02 05:31:07 UTC
Reproducible in build #52.
Comment 4 _ tboudreau 2009-12-02 10:23:21 UTC
Try more current bits - I may not have incremented the module's specification version immediately, so an update may not have appeared for you on the update center.

There is *no way* this exception could still be happening - I changed it from adding/subtracting numbers to explicitly setting the value in this exception to either 0 or 1.  It cannot ever become 2.
Comment 5 _ tboudreau 2009-12-03 15:41:59 UTC
Definitely not reproducible anymore.
Comment 6 dkuzmin 2009-12-04 05:44:28 UTC
I reproduced it with build #81. Please follow this instruction precisely:

In "Java Platform Manager" click "Add Platform".
Select "Java Card Platfrom", click "next".
Select Java Card SDK directory in "Choose Platform Folder" window, click "back".
Select "Java Standard Edition" from list, then "Java Card Platform" again, click "next"
Select Java Card SDK directory in "Choose Platform Folder" window, click "next".

At this point:
     Select "Java Card Platfrom", click "next".
items 3 and 4 added to the list of steps.

Here:
    Select "Java Standard Edition" from list, then "Java Card Platform" again, click "next"
the list again reverts to just 2 steps.

I suppose "2" is the 0-based number of step #3 and at this point there are just 2 items in step list.
Comment 7 _ tboudreau 2009-12-04 11:23:24 UTC
Okay, I think we're getting our bugs mixed up.  The exception above is no longer thrown;  however, the names of the previous steps do disappear as you step thorough the wizard.
Comment 8 _ tboudreau 2009-12-04 11:58:22 UTC
Closing this issue again.  The remaining issue (list of steps in the wizard) is tracked in issue 177745 and the exception this issue was about is fixed.
Comment 9 dkuzmin 2009-12-07 05:50:45 UTC
> Okay, I think we're getting our bugs mixed up.  The exception above is no
longer thrown;

No we are not. Exception is thrown exactly same way as it was when the bug was filed. It can be reliably reproduced in less than 30 seconds by performing simple sequence of command described above. It is reproducible for build #98.

Its rather strange sequence of actions for user to make. Also it is most likely the side effect of 177745. I will verify it after 177745 is fixed.
Comment 10 _ tboudreau 2009-12-07 10:51:03 UTC
Hmm, this exception is actually in the Java Project module, nothing to do with Java Card.  Possibly should be transferred there.

I tried the exact steps you described and could not reproduce it, but I will give it another try.