Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Qlik Open Lakehouse is Now Generally Available! Discover the key highlights and partner resources here.
cancel
Showing results for 
Search instead for 
Did you mean: 
igoralcantara
Partner Ambassador/MVP
Partner Ambassador/MVP

tDataPrepRun returning error DictionarySnapshot.getDQCategoryByName(String)" because "dictionarySnapshot" is null

Good day Qlik Community,

I am working with a job whose schema was provided by Qlik Learning. All other pieces work fine but this one.

Basically I have a Data Preparation job in Talend Cloud (Demographics) which uses only one semantic type: US State Code. The job runs perfectly in the cloud. However, when I call it in Studio, it fails.

I have all the modules installed on Studio and I do have the latest version of Studio installed. I have a Windows OS.

The error I get is this one:

Exception in component tDataprepRun_1 (Process_Data)

java.lang.NullPointerException: Cannot invoke "org.talend.dataquality.semantic.snapshot.DictionarySnapshot.getDQCategoryByName(String)" because "dictionarySnapshot" is null

I also attached a few images.

Any tip on how to fix this? 

igoralcantara_0-1752073495302.png

 

igoralcantara_1-1752073523942.png

 

igoralcantara_2-1752073585763.png

 



Check out my latest posts at datavoyagers.net
Labels (4)
1 Solution

Accepted Solutions
igoralcantara
Partner Ambassador/MVP
Partner Ambassador/MVP
Author

I got it to work. The data preparation in Talend Cloud provided had a bug that blocked it from being called from Talend Studio. Use the one attached instead. 

Check out my latest posts at datavoyagers.net

View solution in original post

35 Replies
Denis_Segard
Support
Support

Hello,

What version of Talend Studio do you use ? 

Denis_Segard_0-1752088112842.png

 

igoralcantara
Partner Ambassador/MVP
Partner Ambassador/MVP
Author

I have  the latest version.

Version: 8

Build id: 20250521_1150-patch

Check out my latest posts at datavoyagers.net
igoralcantara
Partner Ambassador/MVP
Partner Ambassador/MVP
Author

I believe the problem is with my Talend Studio. I see some strange behavior. For example, I am not able to connect two components, when I right click and select Row > Main, nothing happens.

If I type the name of a component in the canvas area and double click on it, nothing happens. The only way to add a component is to type on the pallet and drag it.

Some jobs work fine. For example, I am able to read data from a file and insert the values in Snowflake. Some other, do not.

I tried to uninstall Java, uninstall Talend, restart Windows and reinstall them. Same thing.

Any guesses?

igoralcantara_0-1752097720658.png

 

Check out my latest posts at datavoyagers.net
Denis_Segard
Support
Support

Did you check the file .log in the folder <WORKSPACE_FOLDER>\.metadata ?

Is there some errors / warnings ? 

igoralcantara
Partner Ambassador/MVP
Partner Ambassador/MVP
Author

Yes. I uninstalled and reinstalled Studio and even before doing anything, I see these messages in the log. It says MacOS even tough I have a Windows and I have installed the Windows version.

Command-line arguments: -os win32 -ws win32 -arch x86_64

!ENTRY org.eclipse.jdt.launching.macosx 4 0 2025-07-10 10:32:31.393
!MESSAGE FrameworkEvent ERROR
!STACK 0
org.osgi.framework.BundleException: Could not resolve module: org.eclipse.jdt.launching.macosx [20]
Unresolved requirement: Require-Capability: eclipse.platform; filter:="(osgi.os=macosx)"

 

!ENTRY org.talend.platform.logging 2 0 2025-07-10 10:32:47.156
!MESSAGE 2025-07-10 10:32:47,156 WARN org.talend.themes.common.ImagesMapping - Duplicate image defination in: org.talend.themes.common, Src: SourceImageBean [bundleName=org.talend.metadata.bridge.ui, imagePath=icons/import_action.gif, lifeCycle=null]

 

!ENTRY org.talend.platform.logging 1 0 2025-07-10 10:33:34.710
!MESSAGE 2025-07-10 10:33:34,710 INFO org.talend.commons.exception.CommonExceptionHandler - org.talend.commons.utils.network.TalendProxySelector:-Dtalend.studio.proxy.excludeLoopbackAutomatically=true, adding missing loopback addresses into http.nonProxyHosts: [localhost, 0:0:0:0:0:0:0:1, 127.0.0.1]

 

After running the job, the log shows this error:

 

!STACK 0
java.lang.Exception: [ERROR] Failed to execute goal on project beans: Could not resolve dependencies for project org.example.igor_talend.bean:beans:jar:8.0.1: Failed to collect dependencies at org.example.igor_talend.code:routines:jar:8.0.1: Failed to read artifact descriptor for org.example.igor_talend.code:routines:jar:8.0.1: The following artifacts could not be resolved: org.example.igor_talend:code.Master:pom:8.0.1 (absent): Cannot access central (https://repo1.maven.org/maven2/) in offline mode and the artifact org.example.igor_talend:code.Master:pom:8.0.1 has not been downloaded from it before. -> [Help 1]

 

 

Check out my latest posts at datavoyagers.net
Dave_Simo
Creator II
Creator II

Hello @igoralcantara 

I think your error may occur when there are missing jar files on the Talend environment for the requested action (build, launch, publish, guess schema...). To fix the problem, apply the following method :

Go to the Window menu and choose Preferences.
On the right side, click Maven.

Uncheck the Offline option (checked by default on a new Talend installation), then click Apply and close

Dave_Simo_0-1752181117220.png

Retry the failed operation. Talend will now download the missing jar files.

 

Best Regards

 

igoralcantara
Partner Ambassador/MVP
Partner Ambassador/MVP
Author

Thanks! However, it did not work.

First I noticed that Maven only has the offline option for me.

igoralcantara_0-1752237910914.png
When I unchecked and ran the process, I noticed Studio was in fact downloading a bunch of .jar files and that gave me hope, but I got the same error message as before:

 

Exception in component tDataprepRun_1 (Process_Data)

java.lang.NullPointerException: Cannot invoke "org.talend.dataquality.semantic.snapshot.DictionarySnapshot.getDQCategoryByName(String)" because "dictionarySnapshot" is null

at org.talend.dsel.functions.custom.IsOfTypeUtility.isSemanticType(IsOfTypeUtility.java:60)

at org.talend.dsel.functions.custom.IsOfTypeUtility.evaluate(IsOfTypeUtility.java:28)

at org.talend.dsel.functions.custom.IsInvalid.call(IsInvalid.java:28)

at org.talend.maplang.el.interpreter.impl.function.ExprLangFunctions.call(ExprLangFunctions.java:45)

at org.talend.maplang.el.interpreter.impl.ExprEvalVisitorImpl.visitStandardFunction(ExprEvalVisitorImpl.java:363)

at org.talend.maplang.el.interpreter.impl.ExprEvalVisitorImpl.visitFunctionCall(ExprEvalVisitorImpl.java:351)

at org.talend.maplang.el.interpreter.impl.ExprEvalVisitorImpl.visitFunctionCall(ExprEvalVisitorImpl.java:41)

at org.talend.maplang.el.parser.model.ELNode.accept(ELNode.java:482)

at org.talend.maplang.el.interpreter.impl.ExprEvalVisitorImpl.visitChildren(ExprEvalVisitorImpl.java:500)

at org.talend.maplang.el.interpreter.impl.ExprEvalVisitorImpl.visitBlock(ExprEvalVisitorImpl.java:113)

at org.talend.maplang.el.interpreter.impl.ExprEvalVisitorImpl.visitBlock(ExprEvalVisitorImpl.java:41)

at org.talend.maplang.el.parser.model.ELNode.accept(ELNode.java:445)

at org.talend.maplang.el.interpreter.impl.ExprEvalVisitorImpl.visitChildren(ExprEvalVisitorImpl.java:500)

at org.talend.maplang.el.interpreter.impl.ExprEvalVisitorImpl.visitRoot(ExprEvalVisitorImpl.java:108)

at org.talend.maplang.el.interpreter.impl.ExprEvalVisitorImpl.visitRoot(ExprEvalVisitorImpl.java:41)

at org.talend.maplang.el.parser.model.ELNode.accept(ELNode.java:443)

at org.talend.maplang.el.interpreter.impl.ExprInterpreterImpl.evalAsExprValue(ExprInterpreterImpl.java:199)

at org.talend.maplang.el.interpreter.impl.ExprInterpreterImpl.evalAsBoolean(ExprInterpreterImpl.java:107)

at org.talend.components.processing.functions.AbstractBaseFunction.isRecordMatchingFilter(AbstractBaseFunction.java:233)

at org.talend.components.processing.functions.AbstractBaseFunction.applyOnRecord(AbstractBaseFunction.java:171)

at org.talend.components.processing.functions.AbstractBaseFunction.transform(AbstractBaseFunction.java:156)

at org.talend.components.processing.functions.technical.Composite.transform(Composite.java:53)

at org.talend.components.dataprep.preparation.Preparation.transform(Preparation.java:50)

at org.talend.components.dataprep.processor.DataPrepProcessor.onElement(DataPrepProcessor.java:99)

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

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

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

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

at org.talend.sdk.component.runtime.base.LifecycleImpl.doInvoke(LifecycleImpl.java:87)

at org.talend.sdk.component.runtime.output.ProcessorImpl.onNext(ProcessorImpl.java:303)

at org.talend.sdk.component.runtime.di.AutoChunkProcessor.onElement(AutoChunkProcessor.java:38)

at igor_talend.process_data_0_1.Process_Data.tFileInputDelimited_1Process(Process_Data.java:1496)

at igor_talend.process_data_0_1.Process_Data.runJobInTOS(Process_Data.java:2463)

at igor_talend.process_data_0_1.Process_Data.main(Process_Data.java:1954)

 

Check out my latest posts at datavoyagers.net
Dave_Simo
Creator II
Creator II

Hello @igoralcantara 

Since I don't use the tDataPrepRun component at all, I put the beginning of the error you are experiencing in ChatGPT and it provided me with some resolutions below that may be able to unblock you.

https://chatgpt.com/s/t_68713488f1b081918db18e221d78cede

Dave_Simo_0-1752249467191.png

Best Regards

 

igoralcantara
Partner Ambassador/MVP
Partner Ambassador/MVP
Author

Thanks. I tried ChatGPT for this before and it got me the same answer. The problem is that the options does not exist. There is no Data Quality preference nor Semantic Type. The closest is this:

igoralcantara_0-1752251389609.png

 

Check out my latest posts at datavoyagers.net