This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Tool/software: Code Composer Studio
Hi,
I've installed CCS 10.0.0.00010 within Ubuntu 18.04 following the linux host support instructions provided.
Whenever I attempt to open resource explorer (either online or offline) I get the error message `Failed to create the part's controls` with the details suggesting a `java.lang.RuntimeException: Unsupported API`. The full details for this error are included below.
In my attempts to resolve this I have tried the steps given in this similar forum post including:
These steps, however, have not solved the issue.
It may not be related, but I found that the Getting Statred page would not load beyond a blank screen unless `Window > Preferences > Code Composer Studio > Available Browser` was change from the default `Chromium` and set to `Internal Browser`. Attempting to set this to other option of `javaFX webkit` causes CCS to fail silently on startup.
Thanks for any further suggestions,
Robert.
Full Error Message Details:
java.lang.RuntimeException: Unsupported API at com.ti.browser.contribution.AbstractBrowser.setData(AbstractBrowser.java:25) at com.ti.browser.internal.TIBrowser.setData(TIBrowser.java:438) at com.ti.rex.ccsplugin.editors.ResourceExplorerPage.createBrowser(ResourceExplorerPage.java:215) at com.ti.rex.ccsplugin.editors.ResourceExplorerPage.createFormContent(ResourceExplorerPage.java:147) at org.eclipse.ui.forms.editor.FormPage.lambda$0(FormPage.java:166) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:72) at org.eclipse.ui.forms.editor.FormPage.createPartControl(FormPage.java:166) at org.eclipse.ui.forms.editor.FormEditor.pageChange(FormEditor.java:483) at org.eclipse.ui.part.MultiPageEditorPart.setActivePage(MultiPageEditorPart.java:1034) at org.eclipse.ui.forms.editor.FormEditor.setActivePage(FormEditor.java:617) at org.eclipse.ui.part.MultiPageEditorPart.createPartControl(MultiPageEditorPart.java:337) at org.eclipse.ui.internal.e4.compatibility.CompatibilityPart.createPartControl(CompatibilityPart.java:154) at org.eclipse.ui.internal.e4.compatibility.CompatibilityEditor.createPartControl(CompatibilityEditor.java:96) at org.eclipse.ui.internal.e4.compatibility.CompatibilityPart.create(CompatibilityPart.java:361) 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:498) at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:58) at org.eclipse.e4.core.internal.di.InjectorImpl.processAnnotated(InjectorImpl.java:1002) at org.eclipse.e4.core.internal.di.InjectorImpl.processAnnotated(InjectorImpl.java:967) at org.eclipse.e4.core.internal.di.InjectorImpl.internalInject(InjectorImpl.java:139) at org.eclipse.e4.core.internal.di.InjectorImpl.internalMake(InjectorImpl.java:408) at org.eclipse.e4.core.internal.di.InjectorImpl.make(InjectorImpl.java:331) at org.eclipse.e4.core.contexts.ContextInjectionFactory.make(ContextInjectionFactory.java:202) at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.createFromBundle(ReflectionContributionFactory.java:91) at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.doCreate(ReflectionContributionFactory.java:60) at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.create(ReflectionContributionFactory.java:42) at org.eclipse.e4.ui.workbench.renderers.swt.ContributedPartRenderer.createWidget(ContributedPartRenderer.java:132) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createWidget(PartRenderingEngine.java:1002) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:662) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:768) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.access$0(PartRenderingEngine.java:739) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$2.run(PartRenderingEngine.java:733) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createGui(PartRenderingEngine.java:717) at org.eclipse.e4.ui.workbench.renderers.swt.StackRenderer.showTab(StackRenderer.java:1297) at org.eclipse.e4.ui.workbench.renderers.swt.LazyStackRenderer.lambda$0(LazyStackRenderer.java:75) at org.eclipse.e4.ui.services.internal.events.UIEventHandler.lambda$0(UIEventHandler.java:38) at org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:236) at org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchronizer.java:146) at org.eclipse.swt.widgets.Display.syncExec(Display.java:5786) at org.eclipse.e4.ui.internal.workbench.swt.E4Application$1.syncExec(E4Application.java:219) at org.eclipse.e4.ui.services.internal.events.UIEventHandler.handleEvent(UIEventHandler.java:38) at org.eclipse.equinox.internal.event.EventHandlerWrapper.handleEvent(EventHandlerWrapper.java:205) at org.eclipse.equinox.internal.event.EventHandlerTracker.dispatchEvent(EventHandlerTracker.java:203) at org.eclipse.equinox.internal.event.EventHandlerTracker.dispatchEvent(EventHandlerTracker.java:1) at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:234) at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:151) at org.eclipse.equinox.internal.event.EventAdminImpl.dispatchEvent(EventAdminImpl.java:132) at org.eclipse.equinox.internal.event.EventAdminImpl.sendEvent(EventAdminImpl.java:75) at org.eclipse.equinox.internal.event.EventComponent.sendEvent(EventComponent.java:44) at org.eclipse.e4.ui.services.internal.events.EventBroker.send(EventBroker.java:55) at org.eclipse.e4.ui.internal.workbench.UIEventPublisher.notifyChanged(UIEventPublisher.java:63) at org.eclipse.emf.common.notify.impl.BasicNotifierImpl.eNotify(BasicNotifierImpl.java:424) at org.eclipse.e4.ui.model.application.ui.impl.ElementContainerImpl.setSelectedElementGen(ElementContainerImpl.java:170) at org.eclipse.e4.ui.model.application.ui.impl.ElementContainerImpl.setSelectedElement(ElementContainerImpl.java:188) at org.eclipse.e4.ui.internal.workbench.ModelServiceImpl.showElementInWindow(ModelServiceImpl.java:661) at org.eclipse.e4.ui.internal.workbench.ModelServiceImpl.bringToTop(ModelServiceImpl.java:625) at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.delegateBringToTop(PartServiceImpl.java:790) at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.showPart(PartServiceImpl.java:1236) at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(WorkbenchPage.java:3207) at org.eclipse.ui.internal.WorkbenchPage.lambda$9(WorkbenchPage.java:3112) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:72) at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:3110) at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:3080) at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:3063) at com.ti.rex.ccsplugin.ResourceExplorerOpener.openEditor(ResourceExplorerOpener.java:51) at com.ti.rex.ccsplugin.OpenExplorerHandler.execute(OpenExplorerHandler.java:105) at org.eclipse.ui.internal.handlers.HandlerProxy.execute(HandlerProxy.java:283) at org.eclipse.ui.internal.handlers.E4HandlerProxy.execute(E4HandlerProxy.java:97) 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:498) at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:58) at org.eclipse.e4.core.internal.di.InjectorImpl.invokeUsingClass(InjectorImpl.java:318) at org.eclipse.e4.core.internal.di.InjectorImpl.invoke(InjectorImpl.java:252) 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:5676) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1423) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4935) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4429) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1160) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1049) at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:660) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:559) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:154) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:150) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:137) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:107) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:401) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) 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:498) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:657) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:594) at org.eclipse.equinox.launcher.Main.run(Main.java:1465)
Hi Robert,
Robert Watson3 said:Whenever I attempt to open resource explorer (either online or offline) I get the error message `Failed to create the part's controls` with the details suggesting a `java.lang.RuntimeException: Unsupported API`.
I assume this started to happen when you did the below:
Robert Watson3 said:`Window > Preferences > Code Composer Studio > Available Browser` was change from the default `Chromium` and set to `Internal Browser`.
You must use the default CCS chromium browser with Resource Explorer. Otherwise the the "Unsupported API" error will occur. Please switch back to the default and see if that error goes away.
Robert Watson3 said:It may not be related, but I found that the Getting Statred page would not load beyond a blank screen
We will need to investigate this one separately. But first, make sure that going back to the default browser resolves the Resource Explorer issue.
Thanks
ki
Hi Ki,
Thanks for looking into this.
Yes, the `java.lang.RuntimeException: Unsupported API` error appeared only after switching to the `internal browser`.
When running the default `Chromium` option both the `Getting Started` and `Resource Explorer` pages appeared blank but reported no error messages (see screenshot). I found the `internal browser` was able to display the `Getting Stated` page, but encountered the `java.lang.RuntimeException: Unsupported API` error when attempting to open `Resource Explorer`.
After my original post I tracked down the cause of this problem. It seems to be related to my desktop environment, as I am running a Vanilla GNOME desktop rather than the stock version shipped with Ubuntu 18.04. I believe certain aspects of CCS (or its dependencies) are not compatible with the Wayland based environment used in Vanilla GNOME.
I was able to bypass these problems by reverting to the `Chromium` browser option and switching my desktop session from `GNOME` to `GNOME with Xorg`, via the user login screen settings after a reboot. Reverting to a stock Ubuntu 18.04 session also works.
This by-passed the issues I had encountered above and allowed CCS to function normally, resolving my issues.
Thanks,
Robert.
Hi Robert,
Thanks for the update. Glad to hear it is working now.
Robert Watson3 said:I believe certain aspects of CCS (or its dependencies) are not compatible with the Wayland based environment used in Vanilla GNOME.
Yes you are likely correct. I have heard similar reports from other CCS users on a Wayland based environment.
ki