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