Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cannot create/open a Dataflow run/debug configuration: NPE and IllegalArgumentException #2410

Closed
chanseokoh opened this issue Sep 20, 2017 · 1 comment · Fixed by #2423
Closed
Assignees

Comments

@chanseokoh
Copy link
Contributor

chanseokoh commented Sep 20, 2017

To reproduce, just try to create a Dataflow launch config.

The first NPE is due to RunOptionsDefaultsComponent.getProject() returning null (because initially no project is selected in MiniSelector). We could at least make it return an empty string instead, but looking at updateDefaultableInputValues(), I'm not sure what it means if we are not setting customValues synchronously.

java.lang.NullPointerException
	at com.google.cloud.tools.eclipse.dataflow.ui.launcher.DefaultedPipelineOptionsComponent.updateDefaultableInputValues(DefaultedPipelineOptionsComponent.java:136)
	at com.google.cloud.tools.eclipse.dataflow.ui.launcher.DefaultedPipelineOptionsComponent.setPreferences(DefaultedPipelineOptionsComponent.java:105)
	at com.google.cloud.tools.eclipse.dataflow.ui.launcher.PipelineArgumentsTab.initializeFrom(PipelineArgumentsTab.java:316)
	at org.eclipse.debug.ui.AbstractLaunchConfigurationTabGroup.initializeFrom(AbstractLaunchConfigurationTabGroup.java:90)
	at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupWrapper.initializeFrom(LaunchConfigurationTabGroupWrapper.java:201)

The second exception seems to be that creating a bogus Event instance to simulate calling ModifyListener.modifyText() doesn't work (listener.modifyText(new ModifyEvent(new Event()))):

java.lang.IllegalArgumentException: null source
	at java.util.EventObject.<init>(EventObject.java:56)
	at org.eclipse.swt.internal.SWTEventObject.<init>(SWTEventObject.java:38)
	at org.eclipse.swt.events.TypedEvent.<init>(TypedEvent.java:71)
	at org.eclipse.swt.events.ModifyEvent.<init>(ModifyEvent.java:35)
	at com.google.cloud.tools.eclipse.dataflow.ui.preferences.RunOptionsDefaultsComponent$5.selectionChanged(RunOptionsDefaultsComponent.java:413)
	at org.eclipse.jface.viewers.StructuredViewer$3.run(StructuredViewer.java:877)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:50)
	at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:173)
	at org.eclipse.jface.viewers.StructuredViewer.firePostSelectionChanged(StructuredViewer.java:874)
	at org.eclipse.jface.viewers.StructuredViewer.setSelection(StructuredViewer.java:1734)
	at org.eclipse.jface.viewers.Viewer.setSelection(Viewer.java:388)
	at com.google.cloud.tools.eclipse.projectselector.MiniSelector$2.accept(MiniSelector.java:170)
	at com.google.cloud.tools.eclipse.projectselector.MiniSelector$2.accept(MiniSelector.java:1)
	at com.google.cloud.tools.eclipse.projectselector.ProjectsProvider$2.accept(ProjectsProvider.java:111)
	at com.google.cloud.tools.eclipse.projectselector.ProjectsProvider$2.accept(ProjectsProvider.java:1)
	at com.google.cloud.tools.eclipse.util.jobs.FuturisticJob$1.run(FuturisticJob.java:110)
	at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
	at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:135)
	at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3794)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3433)
	at org.eclipse.jface.window.Window.runEventLoop(Window.java:827)
	at org.eclipse.jface.window.Window.open(Window.java:803)
	at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog.open(LaunchConfigurationsDialog.java:1154)
@chanseokoh chanseokoh changed the title Cannot create a Dataflow run/debug configuration: NPE and IllegalArgumentException Cannot create/open a Dataflow run/debug configuration: NPE and IllegalArgumentException Sep 20, 2017
@briandealwis briandealwis self-assigned this Sep 21, 2017
@briandealwis
Copy link
Member

And from a fresh workspace, creating the new launch config and deselecting Use default Dataflow options produces an NPE.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
2 participants