Uploaded image for project: 'Tools (JBoss Tools)'
  1. Tools (JBoss Tools)
  2. JBIDE-22432

Server Adapter wizard: If oc binary can't be located, then nothing happens and NPE is logged to console

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Major Major
    • 4.4.0.Final
    • 4.4.0.Alpha2
    • openshift
    • None
    • devex #115 May 2016
    • 4
    • Hide
      1. ASSERT: make sure that you dont have any value in the JBoss Tools > OpenShift 3 > oc executable location
      2. ASSERT: make sure that oc is not included in your PATH
      3. ASSERT: make sure that you have a service/pod
      4. EXEC: in OpenShift Explorer: pick "Server Adapter" in the context menu of your service

      Result:
      Nothing happens. In the Eclipse log you'll spot the following:

      org.eclipse.e4.core.di.InjectionException: java.lang.NullPointerException
      	at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:64)
      	at org.eclipse.e4.core.internal.di.InjectorImpl.invokeUsingClass(InjectorImpl.java:282)
      	at org.eclipse.e4.core.internal.di.InjectorImpl.invoke(InjectorImpl.java:264)
      	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:494)
      	at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:491)
      	at org.eclipse.e4.core.commands.internal.HandlerServiceImpl.executeHandler(HandlerServiceImpl.java:210)
      	at org.eclipse.e4.ui.workbench.renderers.swt.HandledContributionItem.executeItem(HandledContributionItem.java:425)
      	at org.eclipse.e4.ui.workbench.renderers.swt.AbstractContributionItem.handleWidgetSelection(AbstractContributionItem.java:449)
      	at org.eclipse.e4.ui.workbench.renderers.swt.AbstractContributionItem$3.handleEvent(AbstractContributionItem.java:477)
      	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
      	at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4494)
      	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1339)
      	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3832)
      	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3443)
      	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$4.run(PartRenderingEngine.java:1118)
      	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
      	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1019)
      	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:157)
      	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:691)
      	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
      	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:604)
      	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
      	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:138)
      	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:388)
      	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:243)
      	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:483)
      	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:670)
      	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:609)
      	at org.eclipse.equinox.launcher.Main.run(Main.java:1516)
      	at org.eclipse.equinox.launcher.Main.main(Main.java:1489)
      Caused by: java.lang.NullPointerException
      	at java.lang.ProcessBuilder.start(ProcessBuilder.java:1012)
      	at org.jboss.tools.openshift.internal.core.preferences.OCBinaryValidator.getVersion(OCBinaryValidator.java:59)
      	at org.jboss.tools.openshift.internal.core.preferences.OCBinaryValidator.isCompatibleForPublishing(OCBinaryValidator.java:102)
      	at org.jboss.tools.openshift.internal.core.preferences.OCBinary.isCompatibleForPublishing(OCBinary.java:89)
      	at org.jboss.tools.openshift.internal.ui.server.ServerSettingsWizardPage.<init>(ServerSettingsWizardPage.java:159)
      	at org.jboss.tools.openshift.internal.ui.server.ServerSettingsWizardPage.<init>(ServerSettingsWizardPage.java:150)
      	at org.jboss.tools.openshift.internal.ui.server.ServerSettingsWizard.<init>(ServerSettingsWizard.java:56)
      	at org.jboss.tools.openshift.internal.ui.handler.ServerAdapterHandler.createServer(ServerAdapterHandler.java:129)
      	at org.jboss.tools.openshift.internal.ui.handler.ServerAdapterHandler.openOrCreateServerAdapter(ServerAdapterHandler.java:119)
      	at org.jboss.tools.openshift.internal.ui.handler.ServerAdapterHandler.getOpenShiftServer(ServerAdapterHandler.java:85)
      	at org.jboss.tools.openshift.internal.ui.handler.ServerAdapterHandler.execute(ServerAdapterHandler.java:60)
      	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:483)
      	at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:54)
      	... 37 more
      
      Show
      ASSERT: make sure that you dont have any value in the JBoss Tools > OpenShift 3 > oc executable location ASSERT: make sure that oc is not included in your PATH ASSERT: make sure that you have a service/pod EXEC: in OpenShift Explorer: pick "Server Adapter" in the context menu of your service Result: Nothing happens. In the Eclipse log you'll spot the following: org.eclipse.e4.core.di.InjectionException: java.lang.NullPointerException at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:64) at org.eclipse.e4.core.internal.di.InjectorImpl.invokeUsingClass(InjectorImpl.java:282) at org.eclipse.e4.core.internal.di.InjectorImpl.invoke(InjectorImpl.java:264) 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:494) at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:491) at org.eclipse.e4.core.commands.internal.HandlerServiceImpl.executeHandler(HandlerServiceImpl.java:210) at org.eclipse.e4.ui.workbench.renderers.swt.HandledContributionItem.executeItem(HandledContributionItem.java:425) at org.eclipse.e4.ui.workbench.renderers.swt.AbstractContributionItem.handleWidgetSelection(AbstractContributionItem.java:449) at org.eclipse.e4.ui.workbench.renderers.swt.AbstractContributionItem$3.handleEvent(AbstractContributionItem.java:477) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4494) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1339) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3832) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3443) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$4.run(PartRenderingEngine.java:1118) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1019) at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:157) at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:691) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:604) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:138) 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:388) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:243) 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:483) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:670) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:609) at org.eclipse.equinox.launcher.Main.run(Main.java:1516) at org.eclipse.equinox.launcher.Main.main(Main.java:1489) Caused by: java.lang.NullPointerException at java.lang.ProcessBuilder.start(ProcessBuilder.java:1012) at org.jboss.tools.openshift.internal.core.preferences.OCBinaryValidator.getVersion(OCBinaryValidator.java:59) at org.jboss.tools.openshift.internal.core.preferences.OCBinaryValidator.isCompatibleForPublishing(OCBinaryValidator.java:102) at org.jboss.tools.openshift.internal.core.preferences.OCBinary.isCompatibleForPublishing(OCBinary.java:89) at org.jboss.tools.openshift.internal.ui.server.ServerSettingsWizardPage.<init>(ServerSettingsWizardPage.java:159) at org.jboss.tools.openshift.internal.ui.server.ServerSettingsWizardPage.<init>(ServerSettingsWizardPage.java:150) at org.jboss.tools.openshift.internal.ui.server.ServerSettingsWizard.<init>(ServerSettingsWizard.java:56) at org.jboss.tools.openshift.internal.ui.handler.ServerAdapterHandler.createServer(ServerAdapterHandler.java:129) at org.jboss.tools.openshift.internal.ui.handler.ServerAdapterHandler.openOrCreateServerAdapter(ServerAdapterHandler.java:119) at org.jboss.tools.openshift.internal.ui.handler.ServerAdapterHandler.getOpenShiftServer(ServerAdapterHandler.java:85) at org.jboss.tools.openshift.internal.ui.handler.ServerAdapterHandler.execute(ServerAdapterHandler.java:60) 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:483) at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:54) ... 37 more

      If oc binary can't be located (default configuration and not found in path), then an internal error is spanwed when trying to create a server adapter

            jmaury@redhat.com Jeff MAURY
            jmaury@redhat.com Jeff MAURY
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: