Having trouble launching the Talend-Data-Quality-collibra-integration SpringBoot integration app while connected to collibra.
Getting below javax.net.ssl.SSLHandshakeException during the spring boot application launch
Caused by: com.collibra.marketplace.library.integration.exception.CollibraIntegrationLibraryException: {“message”:“An unexpected error occurred during execution.”,“details”:“javax.net.ssl.SSLHandshakeException: Remote host closed connection during handshake”,“cause”:“Remote host closed connection during handshake”}
2022-03-25 15:12:18,474 [main] ERROR org.springframework.boot.SpringApplication - Application run failed
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name ‘entryPointController’ defined in file [C:\collibra\sbi-talend-dq-1.0.4\sbi-talend-dq-1.0.4\target\classes\com\collibra\marketplace\controller\EntryPointController.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name ‘integrationProcessorService’ defined in file [C:\collibra\sbi-talend-dq-1.0.4\sbi-talend-dq-1.0.4\target\classes\com\collibra\marketplace\service\IntegrationProcessorService.class]: Unsatisfied dependency expressed through constructor parameter 1; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name ‘collibraImportApiHelper’ defined in URL [jar:file:/C:/Users/sabbine/.m2/repository/com/collibra/marketplace/collibra-integration-library/1.1.4/collibra-integration-library-1.1.4.jar!/com/collibra/marketplace/library/integration/CollibraImportApiHelper.class]: Unsatisfied dependency expressed through constructor parameter 1; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘internalSharedLibraryConnection’: Invocation of init method failed; nested exception is com.collibra.marketplace.library.integration.exception.CollibraIntegrationLibraryException: {“message”:“An unexpected error occurred during execution.”,“details”:“javax.net.ssl.SSLHandshakeException: Remote host closed connection during handshake”,“cause”:“Remote host closed connection during handshake”}
- Is there any API activation that needs to be done on for the Domain?
- Is there any API keys that need to be generated for this integration to work?
Thanks,
Supriya
guestuser111
OP4 years ago · EditedHi @spring-team.collibra.com
Collibra instance communication through Spring boot integration is working.
Thank you very much for your responses.
2022-04-19 17:17:15,899 [main] INFO com.collibra.marketplace.library.integration.InternalSharedLibraryConnection - Successfully authenticated with the Collibra Platform.
Thanks,
Supriya
springboot_team
·4 years ago · EditedHello Supriya,
Thanks for the update.
Can you please confirm whether you have another system that is connecting to the Collibra instance using the same key store and trust store files without issues?
Additionally, can you please try installing a new JVM and testing using this one with the default configuration (just for testing) to confirm whether the issue is code or JVM related?
springboot_team
·4 years ago · EditedHello Supriya,
The following error indicates that the “keystorefilename.jks” file was not found.
As an example, if the KeyStore file is located in the “src/main/resources/keystore” directory, then the following can be used:
Otherwise, the absolute path should be specified:
The same should be done for the Trust Store file (i.e. “collibra.ssl.trust-store”).
Also, just to note (regarding “collibra.ssl.key-store=classpath:keystore/truststorefilename.jks”) that the property to set the trust store file is:
guestuser111
OP4 years ago · EditedThank you @spring-team.collibra.com
Now I’m getting the following error:
Caused by: com.collibra.marketplace.library.integration.exception.CollibraIntegrationLibraryException: {“message”:“An unexpected error occurred during execution.”,“details”:“javax.net.ssl.SSLHandshakeException: Remote host closed connection during handshake”,“cause”:“Remote host closed connection during handshake”}
at com.collibra.marketplace.library.integration.InternalCollibraLibraryExceptionMapper.logAndRethrowException(InternalCollibraLibraryExceptionMapper.java:86) ~[collibra-integration-library-1.1.4.jar:1.1.4]
enabled TLS 1.2 and to defined the cipher list as below:
server.ssl.protocol=TLS
server.ssl.ciphers=TLS_RSA_WITH_AES_128_CBC_SHA256,ECDHE-RSA-AES128-GCM-SHA256
Enabled SSL protocols
server.ssl.enabled-protocols=TLSv1.2
can you please look into it ?
Thanks,
Supriya
springboot_team
·4 years ago · EditedHello Supriya,
Thanks for the update.
Since it seems that your Collibra instance requires a certificate, the Collibra Integration Library has the following properties that should be set to support this. These are:
Can you please try creating the respective KeyStore/Trust Store file and set these properties accordingly (only the required ones)? Thank you
Information regarding the these properties and others is available in the Collibra Integration Library documentation that can be downloaded from here:
Spring Boot Integration Library - Collibra Marketplace
Java classes to facilitate access to Collibra APIs.
guestuser111
OP4 years ago · EditedHi @spring-team.collibra.com,
I obtained the collibra instance’s keystore and truststore files and set these properties.
collibra.ssl.key-store - The KeyStore file path.
collibra.ssl.key-store=classpath:keystore/keystorefilename.jks
collibra.ssl.key-store-password - The KeyStore file password.
collibra.ssl.trust-store - The TrustStore file path.
collibra.ssl.key-store=classpath:keystore/truststorefilename.jks
collibra.ssl.trust-store-password - The TrustStore file password.
collibra.trust-self-signed-certificates=true
After I set these properties, I received this error during application deployment.
Caused by: com.collibra.marketplace.library.integration.exception.CollibraIntegrationLibraryException: {“message”:“There is a problem authenticating with the Collibra Platform instance.”,“details”:“Unable to load the provied KeyStore file. Error: The KeyStore contents/file is not valid (i.e. null).”}
Could you please assist me with this?
Thanks,
Supriya
springboot_team
·4 years ago · EditedHello Supriya,
Sure. To confirm does this issue occur when triggering the integration synchronisation process or when the assets are being imported on the Collibra instance please?
If it is the latter, can you please check whether the following cURL request works?
Where:
<subdomain>is the Collibra sub-domain<username>is the Collibra username<password>is the Collibra passwordAdditionally, can you please advise whether your Collibra instance connection requires a KeyStore/TrustStore or whether a proxy connection is being used? Thank you
guestuser111
OP4 years ago · EditedHi @spring-team.collibra.com,
The SSL hand shake exception occurred during Talend-Data-Quality-collibra-integration spring boot application run (spring-boot:run).
Yes i confirm that CURL request works fine on my local.
I got the collibra dev instance cert from my team and set it in jvm argument and run, and the SSL issue persists.
Thanks,
Supriya
springboot_team
·4 years ago · EditedHello Supriya,
Thanks for the update.
The Collibra instance URL (if it is a Cloud instance), it should be set as follows (without any base path):
Hope it helps.
guestuser111
OP4 years ago · Edited@spring-team.collibra.com
Thank you for confirming the value of the collibra url property.
In my properties file, I have the correct value -collibra.url=https://subdomain>.collibra.com
Could you please look into the SSL handshake problem?
Thanks,
Supriya
springboot_team
·4 years ago · EditedHello Supriya,
Thanks for checking.
Since it does not appear to be a network issue, can you please test the integration using the attached KeyStore file (not the command; rename the file from “keystore.txt” to “keystore.jks” ) and setting the Talend DQ SSL properties as follows? Thank you
(
/path/to/should be replaced with the location of the downloaded keystore.jks file)Note: This is just to test the issue encountered.
Please rename the file from “keystore.txt” to “keystore.jks” once downloaded.
keystore.jks (3.8 KB)
For information purposes, the KeyStore file was generated using the following command:
guestuser111
OP4 years ago · Edited@spring-team.collibra.com
I tested with the attached KeyStore file after updating the properties (locally using ‘mvn clean spring-boot:run’) and the SSL issue persists.
Could you please tell me what the collibra url property value should be, for example, is it just the instance base url or does a Rest application/endpoint need to be added?
collibra.url=https://collibra instance hostname
Can we get a call if possible?
Thanks,
Supriya
springboot_team
·4 years ago · EditedHello Supriya,
If the deployed Talend Data Quality integration is hosted on another machine, can you please try to deploy it locally using
mvn clean spring-boot:runand check whether the SSL issue still occurs?Additionally, can you please try triggering the integration using Postman (https://www.postman.com/downloads/) and since a self-signed certificate is used, the SSL certificate verification is disabled from the Settings?
Thank you
guestuser111
OP4 years ago · EditedHi @spring-team.collibra.com
I’m testing Talend Data Quality integration in my local , and build was successful see below . Its failing on application launch with com.collibra.marketplace.library.integration.exception.CollibraIntegrationLibraryException: {“message”:“An unexpected error occurred during execution.”,“details”:“javax.net.ssl.SSLHandshakeException: Remote host closed connection during handshake”,“cause”:“Remote host closed connection during handshake”}
[INFO] Scanning for projects…
[INFO]
[INFO] --< com.collibra.marketplace:Talend-Data-Quality-collibra-integration >–
[INFO] Building Talend Data Quality 1.0.4
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] — maven-clean-plugin:3.1.0:clean (default-clean) @ Talend-Data-Quality-collibra-integration —
[INFO] Deleting C:\collibra\sbi-talend-dq-1.0.4\sbi-talend-dq-1.0.4\target
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.928 s
[INFO] Finished at: 2022-04-06T12:26:35-04:00
[INFO] ------------------------------------------------------------------------
Thanks,
Supriya
springboot_team
·4 years ago · EditedHello Supriya,
Thanks for the update.
Can you please confirm that you are using Java version 8 and that the following command (values would be different) was used to generate the keystore file?
Also, can you please confirm whether any modifications were made to the JVM regarding TLS versions?
guestuser111
OP4 years ago · EditedHi @spring-team.collibra.com
Yes, i have java 1.8 , generated the self signed cert with the same command successfully (Values would be different). It’s failing on Authenticating with the Collibra Platform.
Nothing has changed on local JVM regarding TLS versions.
2022-04-05 22:58:40,890 [main] INFO com.ulisesbocchio.jasyptspringboot.configuration.StringEncryptorBuilder - Encryptor config not found for property jasypt.encryptor.string-output-type, using default value: base64
2022-04-05 22:58:41,580 [main] INFO com.collibra.marketplace.library.integration.InternalSharedLibraryConnection - Authenticating with the Collibra Platform…
2022-04-05 22:58:41,637 [main] WARN com.collibra.internal.connection.AbstractCollibraConnection - Logging all HTTP requests at INFO level. (Note: The logs may contain sensitive information)
2022-04-05 22:58:42,458 [main] WARN org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name ‘entryPointController’ defined in file [C:\collibra\sbi-talend-dq-1.0.4\sbi-talend-dq-1.0.4\target\classes\com\collibra\marketplace\controller\EntryPointController.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name ‘integrationProcessorService’ defined in file [C:\collibra\sbi-talend-dq-1.0.4\sbi-talend-dq-1.0.4\target\classes\com\collibra\marketplace\service\IntegrationProcessorService.class]: Unsatisfied dependency expressed through constructor parameter 1; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name ‘collibraImportApiHelper’ defined in URL [jar:file:/C:/Users/sabbine/.m2/repository/com/collibra/marketplace/collibra-integration-library/1.1.4/collibra-integration-library-1.1.4.jar!/com/collibra/marketplace/library/integration/CollibraImportApiHelper.class]: Unsatisfied dependency expressed through constructor parameter 1; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘internalSharedLibraryConnection’: Invocation of init method failed; nested exception is com.collibra.marketplace.library.integration.exception.CollibraIntegrationLibraryException: {“message”:“An unexpected error occurred during execution.”,“details”:“javax.net.ssl.SSLHandshakeException: Remote host closed connection during handshake”,“cause”:“Remote host closed connection during handshake”}
Thanks,
Supriya
springboot_team
·4 years ago · EditedHello @supriya.abbineni.kofc.org ,
Thanks for trying the Spring Boot Talend Data Quality to Collibra integration.
It seems that the error was encountered when triggering the integration through the HTTP endpoint.
Regarding setting the required properties, you can refer to the documentation available on the Marketplace web page (https://marketplace.collibra.com/listings/talend-data-quality-integration/), the Configuration section.
Regarding the error, can you please confirm whether, from the properties file, the
server.ssl.enabledis set to true and whether the respective SSL properties were set?If this is enabled, you need to use HTTPS (instead of HTTP) when triggering the integration. Also, if a self-signed certificate is used, the SSL certificate verification might need to be disabled from the client (e.g. Postman).
guestuser111
OP4 years ago · EditedHi @spring-team.collibra.com,
Thank you for your reply. Yes i have generated a self signed keyStore file and updated the SSL application properties as per documentation .
I confirm that its set to true, server.ssl.enabled=true
I am using Talend Data Quality Integration v1.0.4 Java Spring Boot integration and <collibra-integration-library.version>1.1.4</collibra-integration-library.version>
Still getting same error
2022-04-04 10:17:24,344 [main] ERROR org.springframework.boot.SpringApplication - Application run failed
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name ‘entryPointController’ defined in file [C:\collibra\sbi-talend-dq-1.0.4\sbi-talend-dq-1.0.4\target\classes\com\collibra\marketplace\controller\EntryPointController.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name ‘integrationProcessorService’ defined in file [C:\collibra\sbi-talend-dq-1.0.4\sbi-talend-dq-1.0.4\target\classes\com\collibra\marketplace\service\IntegrationProcessorService.class]: Unsatisfied dependency expressed through constructor parameter 1; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name ‘collibraImportApiHelper’ defined in URL [jar:file:/C:/Users/sabbine/.m2/repository/com/collibra/marketplace/collibra-integration-library/1.1.4/collibra-integration-library-1.1.4.jar!/com/collibra/marketplace/library/integration/CollibraImportApiHelper.class]: Unsatisfied dependency expressed through constructor parameter 1; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘internalSharedLibraryConnection’: Invocation of init method failed; nested exception is com.collibra.marketplace.library.integration.exception.CollibraIntegrationLibraryException: {“message”:“An unexpected error occurred during execution.”,“details”:“javax.net.ssl.SSLHandshakeException: Remote host closed connection during handshake”,“cause”:“Remote host closed connection during handshake”}
Thanks,
Supriya
guestuser111
OP4 years ago · EditedHi @kristen.freer , @spring-team.collibra.com
I’d like to provide more details about this javax.net.ssl.SSLHandshakeException.
I’m working on Talend Data Quality Integration v1.0.4 Java Spring Boot integration, which includes properties for interacting with Talend and Collibra Platform instances. The build was successful, but when I launched the app, I received a “javax.net.ssl.SSLHandshakeException.” Please review the above-mentioned error log for more information.
In the property file, I’m using the collibra dev instance url.
Is there a document that specifies the sample Collibra rest application path to be used as well as the domain details in the property file?
Thank you ahead of time.
Alexandra Jorgenson
Admin4 years ago · Edited@spring-team.collibra.com Might you be able to help @supriya.abbineni.kofc.org with this?