I am writing the custom component for the talend. And I want to add a drop-down list in the component settings. Where I need to add the list items from the server using the given host id and password for example:
- Hostname
- Password
- Dropdown
once the user fills the 1 and 2 then the dropdown will be filled using the host response.
I tried to search the related content in the talend documents but didn't find
can anyone suggest me how I can achieve this feature or it is possible to develop?
I did the approach suggest create a plugin and installed to TOS/plugins added the header extension. when I tried to push the component to palette Talend raise errors below
java.lang.Exception: Component TalendDynamicList load error. because the exception:Bad number of extensions found on org.talend.core.external_component. Expecting between 1 and 1 but found 0.
at org.talend.designer.core.model.components.EmfComponent.load(EmfComponent.java:398)
at org.talend.designer.core.model.components.EmfComponent.<init>(EmfComponent.java:243)
at org.talend.designer.codegen.components.model.ComponentsFactory.loadComponentsFromFolder(ComponentsFactory.java:503)
at org.talend.designer.codegen.components.model.ComponentsFactory.loadComponents(ComponentsFactory.java:296)
at org.talend.designer.codegen.components.model.ComponentsFactory.loadComponentsFromComponentsProviderExtension(ComponentsFactory.java:280)
at org.talend.designer.codegen.components.model.ComponentsFactory.init(ComponentsFactory.java:179)
at org.talend.designer.codegen.components.model.ComponentsFactory.getComponents(ComponentsFactory.java:801)
at org.talend.librariesmanager.model.service.LocalLibraryManager.deployComponentAndExtensionLibs(LocalLibraryManager.java:1133)
at org.talend.librariesmanager.model.service.JavaLibrariesService.syncLibraries(JavaLibrariesService.java:227)
at org.talend.librariesmanager.model.service.LibrariesService.syncLibraries(LibrariesService.java:128)
at org.talend.designer.codegen.CodeGeneratorService.refreshTemplates(CodeGeneratorService.java:156)
at org.talend.componentdesigner.ui.action.provider.PushToPaletteActionProvider$PushToPaletteAction.run(PushToPaletteActionProvider.java:181)
at org.eclipse.jface.action.Action.runWithEvent(Action.java:519)
at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:595)
at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:511)
at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:420)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4353)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1061)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4172)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3761)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1151)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1032)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:148)
at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:636)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:579)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
at org.talend.rcp.intro.Application.start(Application.java:243)
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:648)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:603)
at org.eclipse.equinox.launcher.Main.run(Main.java:1465)
Caused by: java.lang.RuntimeException: plugin:org.talend.designer.plsap not found
at org.talend.core.model.repository.ExternalNodesFactory.getInstance(ExternalNodesFactory.java:38)
at org.talend.designer.core.model.components.EmfComponent.load(EmfComponent.java:396)
... 41 more
Caused by: org.talend.commons.exception.IllegalPluginConfigurationException: Bad number of extensions found on org.talend.core.external_component. Expecting between 1 and 1 but found 0.
at org.talend.commons.utils.workbench.extensions.ExtensionImplementationProvider.createInstances(ExtensionImplementationProvider.java:193)
at org.talend.commons.utils.workbench.extensions.ExtensionImplementationProvider.getInstance(ExtensionImplementationProvider.java:143)
at org.talend.core.model.repository.ExternalNodesFactory.getInstance(ExternalNodesFactory.java:36)
... 42 more
if possible then share the plugin templete, I tried to follow
https://www.talendforge.org/forum/viewtopic.php?id=38165 and http://community.jaspersoft.com/wiki/jaspersoft-etl-plugin-create-talend-plugin
both have same error please help