R

Monday, September 26th, 2022 9:40 PM

Error when running Collibra Lineage Harvester

Reading documentation -as shown below see page 17 of “MKPL-Collibra-Integration-Library-v1.1.9.pdf”: The code snippet:
private final CollibraPredefinedTechnicalLineage
collibraPredefinedTechnicalLineage;
@Autowired
public Constructor(CollibraPredefinedTechnicalLineage
collibraPredefinedTechnicalLineage){this.collibraPredefinedTechnicalLineage = collibraPredefinedTechnicalLineage;
}

When I run the springboot application, I get this error:


APPLICATION FAILED TO START


Description:

Parameter 0 of constructor in com…test…tlg…service…TechnicalLineageProcessor required a bean of type ‘com.collibra.marketplace.library.integration.model.lineage.CollibraPredefinedTechnicalLineage’ that could not be found.

The injection point has the following annotations:
- @org.springframework.beans.factory.annotation.Autowired(required=true)

Action:

Consider defining a bean of type ‘com.collibra.marketplace.library.integration.model.lineage.CollibraPredefinedTechnicalLineage’ in your configuration.

I have the following annotation specified: to the main class
@SpringBootApplication(scanBasePackages = { “com…collibra…marketplace”, “com.test…tlg” })

683 Messages

 • 

15.3K Points

2 years ago

@RajeshK If you haven’t already, this would be a good candidate for submission to our Support Portal. When submitting, I would reference the URL of this thread.

38 Messages

2 years ago

@spring-team.collibra.com can you have a look please?

368 Messages

2 years ago

Hi @RajeshK,

Thanks for trying the Collibra Integration Library.

Regarding the error encountered, can you please try using the following annotation?

@SpringBootApplication(scanBasePackages = { "com.collibra" })

19 Messages

Does not make a difference. Still get the same error:


APPLICATION FAILED TO START


Description:

Parameter 0 of constructor in edu.mayo.tlg.service.TechnicalLineageProcessor required a bean of type ‘com.collibra.marketplace.library.integration.model.lineage.CollibraPredefinedTechnicalLineage’ that could not be found.

The injection point has the following annotations:
- @org.springframework.beans.factory.annotation.Autowired(required=true)

Action:

Consider defining a bean of type ‘com.collibra.marketplace.library.integration.model.lineage.CollibraPredefinedTechnicalLineage’ in your configuration.

I suspect, @Bean annotation is missing in your library specifically for the class that throws error. (‘com.collibra.marketplace.library.integration.model.lineage.CollibraPredefinedTechnicalLineage’)

368 Messages

2 years ago

Hi @RajeshK,

Thanks for the update.

The CollibraPredefinedTechnicalLineage is just a POJO that contains builder methods. It is the root class that is used to define the lineage that would be written in JSON format and sent to the Collibra Lineage Harvester for processing. Example:

CollibraPredefinedTechnicalLineage.Builder lineageRequestBuilder = 
     new CollibraPredefinedTechnicalLineage.Builder()
			.addVersion("1.0")
			.addTree(...)
			.addLineages(...);

The CollibraTechnicalLineageHelper class should be autowired and the the following methods can be called (only one from the last two):

  • public void writeLineageFile (String lineageSourcePath, CollibraPredefinedTechnicalLineage predefinedTechnicalLineage);
  • public int triggerLineageHarvesterFullSync (String lineageSourceId);
  • public LineageHarvesterResult triggerLineageHarvesterFullSyncDetailed (final String lineageSourceId);

where:

  • writeLineageFile method is used to write the CollibraPredefinedTechnicalLineage data in JSON format;
  • triggerLineageHarvesterFullSync is used to trigger the full sync, returning the exit code;
  • triggerLineageHarvesterFullSyncDetailed is used to trigger the full sync, returning some information in addition to the exit code.

Also, by any chance did you try replicating what is being done in the GCP Dataflow to Collibra integration as explained here please? Thanks

Loading...