Uploaded image for project: 'Spring IDE'
  1. Spring IDE
  2. IDE-1298

NPE editing config set

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 3.3.0.RC1
    • Component/s: None
    • Labels:
      None
    • Environment:
      STS 3.3.0.M2

      Description

      Opening an existing config set and deselecting a selected (JavaConfig) bean and then selecting it again, throws the attached NPE. The original exception is lost, it seems the call to Exception.getCause() returns null.
      Sample project (any config set works to trigger this) here:
      https://github.com/jotomo/spring-ide-javaconfig-with-base-conf

      java.lang.NullPointerException
      at org.springframework.ide.eclipse.beans.core.internal.model.BeansJavaConfig.readConfig(BeansJavaConfig.java:234)
      at org.springframework.ide.eclipse.beans.core.internal.model.AbstractBeansConfig.getComponents(AbstractBeansConfig.java:302)
      at org.springframework.ide.eclipse.beans.ui.properties.ConfigSetDialog.validateProfiles(ConfigSetDialog.java:522)
      at org.springframework.ide.eclipse.beans.ui.properties.ConfigSetDialog.access$2(ConfigSetDialog.java:512)
      at org.springframework.ide.eclipse.beans.ui.properties.ConfigSetDialog$3.selectionChanged(ConfigSetDialog.java:213)
      at org.eclipse.jface.viewers.Viewer$2.run(Viewer.java:164)
      at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
      at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49)
      at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
      at org.eclipse.jface.viewers.Viewer.fireSelectionChanged(Viewer.java:162)
      at org.eclipse.jface.viewers.StructuredViewer.updateSelection(StructuredViewer.java:2188)
      at org.eclipse.jface.viewers.StructuredViewer.handleSelect(StructuredViewer.java:1211)
      at org.eclipse.jface.viewers.CheckboxTableViewer.handleSelect(CheckboxTableViewer.java:301)
      at org.eclipse.jface.viewers.StructuredViewer$4.widgetSelected(StructuredViewer.java:1241)
      at org.eclipse.jface.util.OpenStrategy.fireSelectionEvent(OpenStrategy.java:239)
      at org.eclipse.jface.util.OpenStrategy.access$4(OpenStrategy.java:233)
      at org.eclipse.jface.util.OpenStrategy$1.handleEvent(OpenStrategy.java:403)
      at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
      at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1392)
      at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3717)
      at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3338)
      at org.eclipse.jface.window.Window.runEventLoop(Window.java:826)
      at org.eclipse.jface.window.Window.open(Window.java:802)
      at org.springframework.ide.eclipse.beans.ui.properties.ConfigSetsTab.handleEditButtonPressed(ConfigSetsTab.java:316)
      at org.springframework.ide.eclipse.beans.ui.properties.ConfigSetsTab.handleDoubleClick(ConfigSetsTab.java:289)
      at org.springframework.ide.eclipse.beans.ui.properties.ConfigSetsTab.access$3(ConfigSetsTab.java:272)
      at org.springframework.ide.eclipse.beans.ui.properties.ConfigSetsTab$4.doubleClick(ConfigSetsTab.java:213)
      at org.eclipse.jface.viewers.StructuredViewer$1.run(StructuredViewer.java:845)
      at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
      at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49)
      at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
      at org.eclipse.jface.viewers.StructuredViewer.fireDoubleClick(StructuredViewer.java:843)
      at org.eclipse.jface.viewers.AbstractTreeViewer.handleDoubleSelect(AbstractTreeViewer.java:1477)
      at org.eclipse.jface.viewers.StructuredViewer$4.widgetDefaultSelected(StructuredViewer.java:1246)
      at org.eclipse.jface.util.OpenStrategy.fireDefaultSelectionEvent(OpenStrategy.java:249)
      at org.eclipse.jface.util.OpenStrategy.access$0(OpenStrategy.java:246)
      at org.eclipse.jface.util.OpenStrategy$1.handleEvent(OpenStrategy.java:307)
      at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
      at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1392)
      at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3717)
      at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3338)
      at org.eclipse.jface.window.Window.runEventLoop(Window.java:826)
      at org.eclipse.jface.window.Window.open(Window.java:802)
      at org.eclipse.ui.dialogs.PropertyDialogAction.run(PropertyDialogAction.java:158)
      at org.eclipse.jface.action.Action.runWithEvent(Action.java:499)
      at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:584)
      at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:501)
      at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:411)
      at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
      at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1392)
      at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3717)
      at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3338)
      at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1108)
      at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
      at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:992)
      at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:137)
      at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:600)
      at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
      at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:555)
      at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
      at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:124)
      at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
      at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
      at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
      at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:354)
      at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:181)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:601)
      at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:636)
      at org.eclipse.equinox.launcher.Main.basicRun(Main.java:591)
      at org.eclipse.equinox.launcher.Main.run(Main.java:1450)
      at org.eclipse.equinox.launcher.Main.main(Main.java:1426)

        Attachments

          Activity

            People

            Assignee:
            mlippert Martin Lippert
            Reporter:
            jotomo Johannes Mockenhaupt
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved: