M

Tuesday, November 23rd, 2021 12:45 PM

Denodo to Collibra integration problems: unable tu run the application!

Dear all, this is an embarrassing question because I’m not even able to run the integration.

I’m using the denodo-to-collibra-integration source code that is available on the market (version 1.0.0). I’ve also used collibra-integration-library versions 1.0.0 and 1.0.2 with no luck in any case.

After adding the integration library to the maven repository the compilation fails :open_mouth:

[INFO] -------------------------------------------------------------
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] /C:/Datos/sbi-denodo-1.0.0/src/main/java/com/collibra/marketplace/denodo/service/MainProcessor.java:[15,37] package org.apache.commons.math3.util does not exist
[ERROR] /C:/Datos/sbi-denodo-1.0.0/src/main/java/com/collibra/marketplace/denodo/service/MainProcessor.java:[39,30] package com.google.common.base does not exist
[ERROR] /C:/Datos/sbi-denodo-1.0.0/src/main/java/com/collibra/marketplace/denodo/component/CollibraAssetTransformer.java:[14,32] package org.apache.commons.lang3 does not exist
[ERROR] /C:/Datos/sbi-denodo-1.0.0/src/main/java/com/collibra/marketplace/denodo/component/CollibraAssetTransformer.java:[15,37] package org.apache.commons.math3.util does not exist
[ERROR] /C:/Datos/sbi-denodo-1.0.0/src/main/java/com/collibra/marketplace/denodo/component/CollibraAssetTransformer.java:[58,16] cannot find symbol
  symbol:   class Pair
  location: class com.collibra.marketplace.denodo.component.CollibraAssetTransformer
[INFO] 5 errors 

So, I’ve started adding new dependencies to the pom.xml: commons-math3, common-lang3, and guava. Eventually the code compiled .

Time to run it! :+1:

Then I realized that new runtime dependencies were missing:

Caused by: java.lang.NoClassDefFoundError: org/springframework/web/reactive/function/client/WebClient
        at java.lang.Class.getDeclaredMethods0(Native Method) ~[?:1.8.0_312]
        at java.lang.Class.privateGetDeclaredMethods(Class.java:2701) ~[?:1.8.0_312]
        at java.lang.Class.getDeclaredMethods(Class.java:1975) ~[?:1.8.0_312]

I started adding dependency by dependency until all the “NoClassDefFoundError” errors disappeared. In my case I’ve added: spring-webflux, httpclient, jersey-client and jersey-media-multipart.

Then a new error arose:

2021-11-23 13:29:32,353 [main] ERROR org.springframework.boot.SpringApplication - Application run failed
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'entryPointController' defined in URL [jar:file:/C:/Datos/sbi-denodo-1.0.0/lib/denodo-to-collibra-integration-1.0.0.jar!/BOOT-INF/classes!/com/collibra/marketplace/denodo/controller/EntryPointController.class]: Unsatisfied dependency expressed through constructor parameter 1; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'collibraImportApiHelper': Unsatisfied dependency expressed through field 'apiHelper'; 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":"InjectionManagerFactory not found."}

I have no way to run the connector. Am I the only one who have tried this?

Any advice is appreciated!

368 Messages

3 years ago

Hello Maria,

Thanks for trying the Denodo integration and library.

Can you please confirm that the Collibra Integration Library v1.0.2 was installed using the following Maven command (as specified in the documentation)?

mvn org.apache.maven.plugins:maven-install-plugin:3.0.0-M1:install-file -Dfile=<path-to-jar-file>

3 years ago

Hi!

Thank you very much for your response. I’ve installed the library with the following command:

mvn install:install-file -Dfile=collibra-integration-library-1.0.2.jar -DgroupId=com.collibra.marketplace -DartifactId=collibra-integration-library -Dversion=1.0.2

The installation was successful and the build (after resolving other dependencies) was ok. The library is also included within the other dependencies inside the compiled “jar”. I think this part is fine.

368 Messages

3 years ago

Hello Maria,

Using the mvn install:install-file command would result in an empty pom.xml file being created in the respective .m2 directory. Therefore, some dependencies would not be resolved when the library is used in a Spring Boot integration.

To address this, can you please try installing the Collibra Integration Library v1.0.2 using the following command:

mvn org.apache.maven.plugins:maven-install-plugin:3.0.0-M1:install-file -Dfile=<path-to-jar-file>

Where, <path-to-jar-file> should be replaced with the path and file name of the Integration Library JAR file.

Also, the dependencies that were added due to library can be removed.

Thank you

3 years ago

Hi!

Thank you for your reply.

The library is included in the repository successfully. You can note that the jar and the pom is available in the same way as any other library (it is not an empty pom)

Please note that we do not have problem during compilation (beside the ones I’ve noted before) Our main concern is during runtime and I can guarantee that the library is inside the compiled jar:

image

Best regards,

368 Messages

3 years ago

Hello Maria,

Thanks for the update.

From the first image, it seems that the pom.xml file located in the .m2 repository is only 1KB in size, whereas, it should be around 10KB and should contain the <dependencies> tag (with the list of dependencies). Therefore, can you please try installing the library using the provided command? Thank you

Loading...