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