VirtualSatellite4-Core icon indicating copy to clipboard operation
VirtualSatellite4-Core copied to clipboard

Updating a ConfigurationTree with the Configure Product Wizard throws a NullPointerException

Open dellerDLR opened this issue 2 years ago • 0 comments

Describe the bug When an element is added to a ProductTree, it does not automatically get added to the ConfigurationTree. AFAIK the Configure Product Wizard context menue option in the Product Structure concept can be used for this. When the Configure Product Wizard is opened a NullPointerException is thrown. To Reproduce Steps to reproduce the behavior:

  1. Create a ProductTree
  2. Create a ConfigurationTree
  3. Add an ElementDefinition to the ProductTree
  4. Right-Click on the ConfigurationTree > Product Structure > Configure Product Wizard
  5. Select the newly created ElementDefinition from the ProductTree
  6. Click on Add New Element
  7. In the UI not ElementConfiguration gets created

Error log:

!ENTRY org.eclipse.ui 4 0 2023-06-19 09:59:27.044
!MESSAGE Unhandled event loop exception
!STACK 0
java.lang.NullPointerException
        at de.dlr.sc.virsat.model.extension.ps.ui.wizards.ConfigureProductPage$1.widgetSelected(ConfigureProductPage.java:150)
        at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:252)
        at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89)
        at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4243)
        at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1063)
        at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4060)
        at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3632)
        at org.eclipse.jface.window.Window.runEventLoop(Window.java:823)
        at org.eclipse.jface.window.Window.open(Window.java:799)
        at de.dlr.sc.virsat.model.extension.ps.ui.handler.ConfigureHandler.execute(ConfigureHandler.java:47)
        at org.eclipse.ui.internal.handlers.HandlerProxy.execute(HandlerProxy.java:283)
        at org.eclipse.ui.internal.handlers.E4HandlerProxy.execute(E4HandlerProxy.java:97)
        at jdk.internal.reflect.GeneratedMethodAccessor69.invoke(Unknown Source)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:566)
        at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:58)
        at org.eclipse.e4.core.internal.di.InjectorImpl.invokeUsingClass(InjectorImpl.java:317)
        at org.eclipse.e4.core.internal.di.InjectorImpl.invoke(InjectorImpl.java:251)
        at org.eclipse.e4.core.contexts.ContextInjectionFactory.invoke(ContextInjectionFactory.java:173)
        at org.eclipse.e4.core.commands.internal.HandlerServiceHandler.execute(HandlerServiceHandler.java:156)
        at org.eclipse.core.commands.Command.executeWithChecks(Command.java:488)
        at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:487)
        at org.eclipse.e4.core.commands.internal.HandlerServiceImpl.executeHandler(HandlerServiceImpl.java:213)
        at org.eclipse.e4.ui.workbench.renderers.swt.HandledContributionItem.executeItem(HandledContributionItem.java:438)
        at org.eclipse.e4.ui.workbench.renderers.swt.AbstractContributionItem.handleWidgetSelection(AbstractContributionItem.java:449)
        at org.eclipse.e4.ui.workbench.renderers.swt.AbstractContributionItem.lambda$2(AbstractContributionItem.java:475)
        at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89)
        at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4243)
        at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1063)
        at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4060)
        at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3632)
        at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155)
        at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
        at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046)
        at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155)
        at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:644)
        at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
        at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:551)
        at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:156)
        at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152)
        at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203)
        at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136)
        at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
        at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:401)
        at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:566)
        at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659)
        at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596)
        at org.eclipse.equinox.launcher.Main.run(Main.java:1467)

Expected behavior AFAIK the Wizard should be able to be used to update a ConfigurationTree. When clicking on Add New Element while a ElementDefinition is selected, an ElementConfiguration should be created with the coresponsing inheritance link.

Screenshots image

Desktop (please complete the following information):

  • OS: Windows 10
  • Version 21H2

dellerDLR avatar Jun 19 '23 08:06 dellerDLR