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

Announcements
Join us in Toronto Sept 9th for Qlik's AI Reality Tour! Register Now
cancel
Showing results for 
Search instead for 
Did you mean: 
mpivot
Contributor
Contributor

API call requiring a certificate : job works fine with Talend Studio but fails when running on Talend Cloud Job with Remote Engine

Hello community,

 

I need help on how to use a certificate in a job that running on Talend Cloud. I use Talend to make API calls that requires a certificate to get an answer.

 

To include the certificate in my job, I use the component tJava :

System.setProperty("javax.net.ssl.trustStore","C:/Wrk_files/sources/globale.jks"); System.setProperty("javax.net.ssl.trustStorePassword","*******");

 

The job and the call work fine when I launch it on my computer with Talend studio but when I publish the job and launch it on Talend Cloud with remote engine, I get this error message tREST_1 javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: No trusted certificate foundcom.sun.jersey.api.client.ClientHandlerException: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: No trusted certificate found at com.sun.jersey.client.urlconnection.URLConnectionClientHandler.handle(URLConnectionClientHandler.java:131)

 

I put the certificate on the server where I have the remote engine on the right emplacement C:/Wrk_files/sources/globale.jks

I also follow what has been advised here : https://community.talend.com/t5/Design-and-Development/Three-ways-to-set-a-truststore-for-an-SSL-TLS...

I try to put the certificate on the default Java keystore location at JAVA_HOME\jre\lib\security\cacerts but I still get the same error message.

 

Any help will be welcome. Thanks.

Labels (5)
1 Reply
Anonymous
Not applicable

Hello,

Are you trying to call a HTTPS REST API through Jersey Client? This error can occur if the cacerts have not been added to the keystores. 
Do the following to import the cacerts into your keystores: This command imports the certificate (cacerts) into the keystore (keystore.jks). 
keytool -importcert -trustcacerts -file $JAVA_HOME/jre/lib/security/cacerts -alias domain -keystore keystore.jks 
Import Signed/Root/Intermediate Certificate 
https://www.digitalocean.com/community/tutorials/java-keytool-essentials-working-with-java-keystores...

Documentation is you need to change a job setting: 
https://help.talend.com/#/reader/IB_OWq~P~l4~RXlyaRM9kQ/U083l85mcTvpBegp~0MM2Q 

Let us know if it works.

Best regards

Sabrina