[jbosstools-issues] [JBoss JIRA] (JBIDE-21986) Error when opening the "Deploy Docker Image" wizard if no valid Docker connection exists

Xavier Coulon (JIRA) issues at jboss.org
Tue Mar 29 08:38:00 EDT 2016


     [ https://issues.jboss.org/browse/JBIDE-21986?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Xavier Coulon resolved JBIDE-21986.
-----------------------------------
    Resolution: Out of Date


Marking as {{out-of-date}} since the upstream Docker tooling now includes a fix for this bug.

The following code was causing the underlying NullPointerException:

{code}
this.imageNames.addAll(dockerConnection.getImages().stream()
				.filter(image -> !image.isDangling() && !image.isIntermediateImage())
				.flatMap(image -> image.repoTags().stream()).sorted().collect(Collectors.toList()));
{code}

in the fixed version of the Docker tooling, {{IDockerConnection#getImages()}} does not return {{null}} if no images could be found.

> Error when opening the "Deploy Docker Image" wizard if no valid Docker connection exists
> ----------------------------------------------------------------------------------------
>
>                 Key: JBIDE-21986
>                 URL: https://issues.jboss.org/browse/JBIDE-21986
>             Project: Tools (JBoss Tools)
>          Issue Type: Bug
>          Components: openshift
>    Affects Versions: 4.3.1.CR1
>            Reporter: Xavier Coulon
>            Assignee: Xavier Coulon
>              Labels: deploy_docker_wizard, openshift_v3
>             Fix For: 4.3.1.CR1
>
>
> When opening the {{Deploy Docker Image}} wizard, I got an error as below:
> {code}
> !ENTRY org.eclipse.core.databinding.observable 4 2 2016-03-29 10:52:05.197
> !MESSAGE Problems occurred when invoking code from plug-in: "org.eclipse.core.databinding.observable".
> !STACK 0
> java.lang.RuntimeException: java.lang.NullPointerException
> 	at org.eclipse.core.internal.databinding.beans.BeanPropertyHelper.readProperty(BeanPropertyHelper.java:102)
> 	at org.eclipse.core.internal.databinding.beans.BeanValueProperty.doGetValue(BeanValueProperty.java:49)
> 	at org.eclipse.core.databinding.property.value.ValueProperty.getValue(ValueProperty.java:58)
> 	at org.eclipse.core.internal.databinding.property.value.SimplePropertyObservableValue$2.run(SimplePropertyObservableValue.java:84)
> 	at org.eclipse.core.databinding.observable.Realm$1.run(Realm.java:150)
> 	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
> 	at org.eclipse.core.databinding.observable.Realm.safeRun(Realm.java:154)
> 	at org.eclipse.core.databinding.observable.Realm.exec(Realm.java:172)
> 	at org.eclipse.core.internal.databinding.property.value.SimplePropertyObservableValue.firstListenerAdded(SimplePropertyObservableValue.java:81)
> 	at org.eclipse.core.databinding.observable.ChangeManager.addListener(ChangeManager.java:70)
> 	at org.eclipse.core.databinding.observable.value.AbstractObservableValue.addValueChangeListener(AbstractObservableValue.java:47)
> 	at org.eclipse.core.databinding.observable.value.DecoratingObservableValue.firstListenerAdded(DecoratingObservableValue.java:76)
> 	at org.eclipse.core.databinding.observable.ChangeManager.addListener(ChangeManager.java:70)
> 	at org.eclipse.core.databinding.observable.value.DecoratingObservableValue.addValueChangeListener(DecoratingObservableValue.java:45)
> 	at org.eclipse.core.databinding.observable.value.DecoratingObservableValue.firstListenerAdded(DecoratingObservableValue.java:76)
> 	at org.eclipse.core.databinding.observable.ChangeManager.addListener(ChangeManager.java:70)
> 	at org.eclipse.core.databinding.observable.value.DecoratingObservableValue.addValueChangeListener(DecoratingObservableValue.java:45)
> 	at org.eclipse.core.databinding.ValueBinding.<init>(ValueBinding.java:81)
> 	at org.eclipse.core.databinding.DataBindingContext.bindValue(DataBindingContext.java:164)
> 	at org.jboss.tools.common.ui.databinding.ValueBindingBuilder.bind(ValueBindingBuilder.java:36)
> 	at org.jboss.tools.common.ui.databinding.ValueBindingBuilder.access$0(ValueBindingBuilder.java:34)
> 	at org.jboss.tools.common.ui.databinding.ValueBindingBuilder$ModelDefinition.in(ValueBindingBuilder.java:69)
> 	at org.jboss.tools.openshift.internal.ui.wizard.deployimage.DeployImagePage.createDockerConnectionControl(DeployImagePage.java:226)
> 	at org.jboss.tools.openshift.internal.ui.wizard.deployimage.DeployImagePage.doCreateControls(DeployImagePage.java:158)
> 	at org.jboss.tools.openshift.internal.common.ui.wizard.AbstractOpenShiftWizardPage.createControl(AbstractOpenShiftWizardPage.java:70)
> 	at org.eclipse.jface.wizard.Wizard.createPageControls(Wizard.java:175)
> 	at org.eclipse.jface.wizard.WizardDialog.createPageControls(WizardDialog.java:705)
> 	at org.eclipse.jface.wizard.WizardDialog.createContents(WizardDialog.java:597)
> 	at org.eclipse.jface.window.Window.create(Window.java:430)
> 	at org.eclipse.jface.dialogs.Dialog.create(Dialog.java:1096)
> 	at org.jboss.tools.common.ui.WizardUtils.createWizardDialog(WizardUtils.java:262)
> 	at org.jboss.tools.common.ui.WizardUtils.openWizardDialog(WizardUtils.java:255)
> 	at org.jboss.tools.openshift.internal.ui.handler.DeployImageHandler.execute(DeployImageHandler.java:58)
> 	at org.eclipse.ui.internal.handlers.HandlerProxy.execute(HandlerProxy.java:295)
> 	at org.eclipse.ui.internal.handlers.E4HandlerProxy.execute(E4HandlerProxy.java:90)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.lang.reflect.Method.invoke(Method.java:497)
> 	at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:56)
> 	at org.eclipse.e4.core.internal.di.InjectorImpl.invokeUsingClass(InjectorImpl.java:252)
> 	at org.eclipse.e4.core.internal.di.InjectorImpl.invoke(InjectorImpl.java:234)
> 	at org.eclipse.e4.core.contexts.ContextInjectionFactory.invoke(ContextInjectionFactory.java:132)
> 	at org.eclipse.e4.core.commands.internal.HandlerServiceHandler.execute(HandlerServiceHandler.java:152)
> 	at org.eclipse.core.commands.Command.executeWithChecks(Command.java:493)
> 	at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:486)
> 	at org.eclipse.e4.core.commands.internal.HandlerServiceImpl.executeHandler(HandlerServiceImpl.java:210)
> 	at org.eclipse.e4.ui.workbench.renderers.swt.HandledContributionItem.executeItem(HandledContributionItem.java:799)
> 	at org.eclipse.e4.ui.workbench.renderers.swt.HandledContributionItem.handleWidgetSelection(HandledContributionItem.java:675)
> 	at org.eclipse.e4.ui.workbench.renderers.swt.HandledContributionItem.access$7(HandledContributionItem.java:659)
> 	at org.eclipse.e4.ui.workbench.renderers.swt.HandledContributionItem$4.handleEvent(HandledContributionItem.java:592)
> 	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
> 	at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4230)
> 	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1491)
> 	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1514)
> 	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1499)
> 	at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:1299)
> 	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4072)
> 	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3698)
> 	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$4.run(PartRenderingEngine.java:1127)
> 	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
> 	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1018)
> 	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:156)
> 	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:694)
> 	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
> 	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:606)
> 	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
> 	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:139)
> 	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
> 	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
> 	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
> 	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380)
> 	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.lang.reflect.Method.invoke(Method.java:497)
> 	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:669)
> 	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:608)
> 	at org.eclipse.equinox.launcher.Main.run(Main.java:1515)
> 	at org.eclipse.equinox.launcher.Main.main(Main.java:1488)
> Caused by: java.lang.NullPointerException
> 	at org.jboss.tools.openshift.internal.ui.wizard.deployimage.DeployImageWizardModel.setDockerConnection(DeployImageWizardModel.java:465)
> 	at org.jboss.tools.openshift.internal.ui.wizard.deployimage.DeployImageWizardModel.getDockerConnection(DeployImageWizardModel.java:116)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.lang.reflect.Method.invoke(Method.java:497)
> 	at org.eclipse.core.internal.databinding.beans.BeanPropertyHelper.readProperty(BeanPropertyHelper.java:96)
> 	... 80 more
> {code}
> I had a single Docker connection, but it was not reachable:
> {code}
> Caused by: java.net.SocketTimeoutException: connect timed out
> 	at java.net.PlainSocketImpl.socketConnect(Native Method)
> 	at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:345)
> 	at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
> 	at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
> 	at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
> 	at java.net.Socket.connect(Socket.java:589)
> 	at org.apache.http.conn.ssl.SSLConnectionSocketFactory.connectSocket(SSLConnectionSocketFactory.java:244)
> 	at org.apache.http.impl.conn.HttpClientConnectionOperator.connect(HttpClientConnectionOperator.java:125)
> 	... 29 more
> {code}
> so the list of images could not be retrieved.



--
This message was sent by Atlassian JIRA
(v6.4.11#64026)


More information about the jbosstools-issues mailing list