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: 
Anonymous
Not applicable

tELTHiveMap NullPointerException

Hi, I tried to replicate this example in the Talend Open Studio for Big Data (v. 7.0.1): https://talend-rc.fluidtopics.net/reader/NNO~fmVQU4rlkF9Depfdxw/lMyOXnz3qRAvdVqmvb8Hrg

 

I create the connections to Hive and the tables that I need, but when I run the job I had this error:

 

Exception in component tELTHiveOutput_1 (Integration)
java.lang.NullPointerException
at inicial.integration_0_1.Integration.tELTHiveMap_1Process(Integration.java:612)
at inicial.integration_0_1.Integration.runJobInTOS(Integration.java:1198)
at inicial.integration_0_1.Integration.main(Integration.java:1040)

 

The job is this:

 

0683p000009LziL.png

Labels (4)
1 Solution

Accepted Solutions
Anonymous
Not applicable
Author

Hello,

What you need to do is to use the OnsubjobOK trigger to connect to another component to "start" your pre-process.

tPreJob is used to run before your main body of code. Think of it as StartUp activators.

The workflow should be:

                                        tprejob-->thiveconnection

                                            |

                                            | onsubjobok

tELTHiveInput-->tELTHiveMap-->tELTHiveOutput

Let us rule out workflow issue firstly and then we will check null in data mapping.

Best regards

Sabrina

View solution in original post

7 Replies
Anonymous
Not applicable
Author

Hello,

From your screenshot, you are using tHiveConnection component, whereas there is no connector(onsubjobok) between your thiveconnection and tELTHiveMap.

There will be no flow from thiveconnection to your ELT subjob.

Does your job works without using tHiveConnection component?

Best regards

Sabrina

 

Anonymous
Not applicable
Author

Hi, thanks for your feedback. The tHiveConnection component it's connected to the tELTHiveMap right this:0683p000009LzeT.png

And the configuration of the tELTHiveOutput element is:

0683p000009LzTk.png

I created the necessary tables I need and check this in my HDP Clúster.

 

The mapping is:

 

0683p000009Lzj4.png

 

I hope thats help 

David

 

Anonymous
Not applicable
Author

Hello,

You have to use connector(onsubjobok or oncomponentOK) between tHiveConnection and tELTHiveMap.

Best regards

Sabrina

Anonymous
Not applicable
Author

Hi, I connected the tELTHiveMap with the trigger option to the tELTHiveConnection element:

 

0683p000009LzUH.png

But the error is the same:

[statistics] connecting to socket on port 3907
[statistics] connected
Exception in component tELTHiveOutput_1 (Integration)
java.lang.NullPointerException
at inicial.integration_0_1.Integration.tELTHiveMap_1Process(Integration.java:591)
at inicial.integration_0_1.Integration.runJobInTOS(Integration.java:1173)
at inicial.integration_0_1.Integration.main(Integration.java:1022)
[statistics] disconnected

 

I understand that the trigger must be placed in the tELTHiveMap element.

The line 591 of the code is this:

" java.sql.Statement stmt_tELTHiveOutput_1 = conn_tELTHiveOutput_1
.createStatement();"

 

Thanks

David

Anonymous
Not applicable
Author

Hello,

What you need to do is to use the OnsubjobOK trigger to connect to another component to "start" your pre-process.

tPreJob is used to run before your main body of code. Think of it as StartUp activators.

The workflow should be:

                                        tprejob-->thiveconnection

                                            |

                                            | onsubjobok

tELTHiveInput-->tELTHiveMap-->tELTHiveOutput

Let us rule out workflow issue firstly and then we will check null in data mapping.

Best regards

Sabrina

Anonymous
Not applicable
Author

Hi, thanks for your reply

I connect the elements like this:

0683p000009LzkL.png

 

Is this okey? In this case I get this output error:

Exception in component tELTHiveOutput_1 (Integration)
org.apache.hive.service.cli.HiveSQLException: Error while compiling statement: FAILED: ParseException line 1:124 cannot recognize input near '(' ')' '<EOF>' in expression specification
at org.apache.hive.jdbc.Utils.verifySuccess(Utils.java:262)

 

Thanks

David

Anonymous
Not applicable
Author

Hello David,

Could you please check your "Code" tab in your job to see if there will be compile error highlighted in red line?

Best regards

Sabrina