Skip to main content
Announcements
SYSTEM MAINTENANCE: Thurs., Sept. 19, 1 AM ET, Platform will be unavailable for approx. 60 minutes.
cancel
Showing results for 
Search instead for 
Did you mean: 
sylB
Contributor
Contributor

Context error in a tRunJob component (non-final local variable)

Hello.

I have a bad issue with a tRunJob, not working with (Data integration v: 7.3.1.20200219_1130) & jREs: java-11-oracle

Run on Ubuntu 20.04.3 LTS.

When i try to put a context with my parent job: tJava (for context variable) => tRunJob (child) i have this issue:

Message détaillé: Cannot refer to the non-final local variable paraList_tRunJob_1 defined in an enclosing scope

Il peut y avoir d'autres erreurs causées par la compatibilité avec la JVM. Vérifiez que les paramètres de votre JVM sont les mêmes que dans le studio.

   at org.talend.designer.runprocess.JobErrorsChecker.checkLastGenerationHasCompilationError(JobErrorsChecker.java:358)

   at org.talend.designer.runprocess.DefaultRunProcessService.checkLastGenerationHasCompilationError(DefaultRunProcessService.java:539)

   at org.talend.designer.runprocess.RunProcessService.checkLastGenerationHasCompilationError(RunProcessService.java:317)

   at org.talend.designer.runprocess.ProcessorUtilities.generateBuildInfo(ProcessorUtilities.java:955)

   at org.talend.designer.runprocess.ProcessorUtilities.generateCode(ProcessorUtilities.java:615)

   at org.talend.designer.runprocess.ProcessorUtilities.generateCode(ProcessorUtilities.java:2068)

   at org.talend.designer.runprocess.RunProcessContext$1.run(RunProcessContext.java:601)

   at org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:440)

   at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:356)

   at org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:474)

   at org.eclipse.ui.internal.progress.ProgressMonitorJobsDialog.run(ProgressMonitorJobsDialog.java:240)

   at org.eclipse.ui.internal.progress.ProgressManager.run(ProgressManager.java:966)

   at org.talend.designer.runprocess.RunProcessContext.exec(RunProcessContext.java:548)

   at org.talend.designer.runprocess.ui.ProcessComposite.exec(ProcessComposite.java:1448)

   at org.talend.designer.runprocess.ui.views.ProcessView$RunAction.run(ProcessView.java:700)

   at org.talend.designer.runprocess.ui.actions.RunProcessAction.run(RunProcessAction.java:63)

   at org.talend.designer.core.debug.JobLaunchConfigurationDelegate$1$1.run(JobLaunchConfigurationDelegate.java:98)

   at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:40)

   at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:185)

   at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4906)

   at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4475)

   at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1173)

   at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:339)

   at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1062)

   at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:156)

   at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:636)

   at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:339)

   at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:563)

   at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:151)

   at org.talend.rcp.intro.Application.start(Application.java:280)

   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:400)

   at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255)

   at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

   at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

   at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

   at java.base/java.lang.reflect.Method.invoke(Method.java:566)

   at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659)

   at org.eclipse.equinox.launcher.Main.basicRun(Main.java:595)

   at org.eclipse.equinox.launcher.Main.run(Main.java:1501)

   at org.eclipse.equinox.launcher.Main.main(Main.java:1474)

The error occurs because parentContextMap_tRunJob_1 is not final java.util.Map<String, Object> parentContextMap_tRunJob_1 = new java.util.HashMap<String, Object>();

& paraList_tRunJob_1 is not final java.util.List<String> paraList_tRunJob_1 = new java.util.ArrayList<String>();

(passing final variables with the "quick fix" in a code not working)

Hope this error find a solution without this, i will have to downgrade talend ...

Good day & thank you in advance for a solution.

Labels (2)
1 Reply
Anonymous
Not applicable

@sylvain buhour​ , I can't find a similar issue on community or bugtracker, can you please provide an example job for us to reproduce the issue?

 

Regards

Shong