Uploaded image for project: 'Talend Component Kit'
  1. Talend Component Kit
  2. TCOMP-492

java.lang.LinkageError appear when integrate salesforce definition and runtime to studio

Apply templateInsert Lucidchart Diagram
    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • Major
    • None
    • None
    • None
    • None
    • All
    • Small

    Description

      we split the salesforce component to definition and runtime two parts, some osgi test case fail,
      the branch : https://github.com/Talend/components/tree/feature/6.4/TDI-38262-split-salesforce
      the exception is :

      java.lang.LinkageError: loader constraint violation: when resolving method "org.talend.components.salesforce.runtime.SalesforceAvroRegistry.registerSchemaInferrer(Ljava/lang/Class;Lorg/talend/daikon/java8/SerializableFunction;)V" the class loader (instance of org/talend/daikon/sandbox/SandboxInstanceFactory$1) of the current class, org/talend/components/salesforce/runtime/SalesforceAvroRegistry, and the class loader (instance of org/apache/felix/framework/BundleWiringImpl$BundleClassLoaderJava5) for the method's defining class, org/talend/daikon/avro/AvroRegistry, have different Class objects for the type org/talend/daikon/java8/SerializableFunction used in the signature
      

      Also test it in studio, the exception is like that :

      Caused by: java.lang.LinkageError: loader constraint violation: when resolving method "org.talend.components.salesforce.runtime.SalesforceAvroRegistry.registerSchemaInferrer(Ljava/lang/Class;Lorg/talend/daikon/java8/SerializableFunction;)V" the class loader (instance of org/talend/daikon/sandbox/SandboxInstanceFactory$1) of the current class, org/talend/components/salesforce/runtime/SalesforceAvroRegistry, and the class loader (instance of org/eclipse/osgi/internal/loader/EquinoxClassLoader) for the method's defining class, org/talend/daikon/avro/AvroRegistry, have different Class objects for the type org/talend/daikon/java8/SerializableFunction used in the signature
      	at org.talend.components.salesforce.runtime.SalesforceAvroRegistry.<init>(SalesforceAvroRegistry.java:54)
      	at org.talend.components.salesforce.runtime.SalesforceAvroRegistry.<clinit>(SalesforceAvroRegistry.java:46)
      	at org.talend.components.salesforce.runtime.SalesforceSourceOrSink.getSchema(SalesforceSourceOrSink.java:391)
      	at org.talend.components.salesforce.runtime.SalesforceSourceOrSink.getEndpointSchema(SalesforceSourceOrSink.java:384)
      	at org.talend.components.salesforce.SalesforceModuleProperties.afterModuleName(SalesforceModuleProperties.java:120)
      	... 12 more
      

      Attachments

        Activity

          People

            sgandon sebastien gandon
            wwang Wei Wang
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: