Symptom
User Connector - SF is failing with error below, where # may differ. When checking the results report may also be present "Cannot specify a NULL Key value for reference entity STUD_ID" exception.
com.plateausystems.connector.api.ConnectorException: Error while reading content of file :user_data.txt. Invalid Input file. Input size doesn't match with declared headers at line Number :#
at com.plateausystems.connector.importdata.impl.supercsv.SuperCSVDataImportServiceImpl.processData(SuperCSVDataImportServiceImpl.java:274)
at com.plateausystems.connector.importdata.impl.supercsv.SuperCSVDataImportServiceImpl.importDataProcess(SuperCSVDataImportServiceImpl.java:142)
at com.plateausystems.connector.importdata.impl.AbstractDataImportServiceImpl.importData(AbstractDataImportServiceImpl.java:123)
at sun.reflect.GeneratedMethodAccessor911.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at com.plateausystems.elms.framework.perfmonitor.impl.ServicePerformanceMonitorInterceptor.invoke(ServicePerformanceMonitorInterceptor.java:41)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at com.plateausystems.elms.framework.usagestatistics.impl.UsageStatisticsInterceptor.invoke(UsageStatisticsInterceptor.java:66)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at com.plateausystems.elms.framework.authorization.impl.ServiceAuthorizationInterceptor.invoke(ServiceAuthorizationInterceptor.java:127)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at com.plateausystems.elms.framework.localization.DataLocalizationInterceptor.invoke(DataLocalizationInterceptor.java:72)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
at com.sun.proxy.$Proxy1143.importData(Unknown Source)
at com.plateausystems.connector.importdata.impl.FileDataImport.importData(FileDataImport.java:114)
at sun.reflect.GeneratedMethodAccessor1015.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:196)
at com.sun.proxy.$Proxy1145.importData(Unknown Source)
at com.plateausystems.connector.consumer.impl.BaseConsumerControllerServiceImpl.importData(BaseConsumerControllerServiceImpl.java:1213)
at com.plateausystems.connector.consumer.student.impl.StudentConsumerControllerServiceImpl.importData(StudentConsumerControllerServiceImpl.java:43)
at com.plateausystems.connector.consumer.impl.EntityTypesConsumerControllerServiceImpl.invokeMainWorkflow(EntityTypesConsumerControllerServiceImpl.java:113)
at com.plateausystems.connector.consumer.impl.BaseConsumerControllerServiceImpl.invokeMainWorkflow(BaseConsumerControllerServiceImpl.java:163)
at com.plateausystems.connector.consumer.impl.BaseConsumerControllerServiceImpl.processSequencedInputFiles(BaseConsumerControllerServiceImpl.java:1275)
at com.plateausystems.connector.consumer.impl.BaseConsumerControllerServiceImpl.invoke(BaseConsumerControllerServiceImpl.java:152)
at sun.reflect.GeneratedMethodAccessor1011.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
at com.plateausystems.elms.framework.perfmonitor.impl.ServicePerformanceMonitorInterceptor.invoke(ServicePerformanceMonitorInterceptor.java:41)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at com.plateausystems.elms.framework.usagestatistics.impl.UsageStatisticsInterceptor.invoke(UsageStatisticsInterceptor.java:66)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at com.plateausystems.elms.framework.authorization.impl.ServiceAuthorizationInterceptor.invoke(ServiceAuthorizationInterceptor.java:127)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at com.plateausystems.elms.framework.localization.DataLocalizationInterceptor.invoke(DataLocalizationInterceptor.java:72)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
at com.sun.proxy.$Proxy1153.invoke(Unknown Source)
at com.plateausystems.connector.api.ConnectorApmJob.execute(ConnectorApmJob.java:80)
at com.plateau.common.jobscheduling.impl.simple.SimpleJobRunnable.run(SimpleJobRunnable.java:95)
at com.plateau.foundation.jobscheduling.TenantAwareJobRunnable.run(TenantAwareJobRunnable.java)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:807)
Caused by: com.plateausystems.connector.api.ConnectorException: Invalid Input file. Input size doesn't match with declared headers at line Number :#
at com.plateausystems.connector.importdata.impl.supercsv.SuperCSVDataImportServiceImpl.processData(SuperCSVDataImportServiceImpl.java:212)
... 55 more
Environment
SuccessFactors Learning Management System (LMS)
Cause
The User Connector - SF job uses a different file than the User Connector and other manual connector jobs. The file for User Connector - SF is supposed to be delivered by BizX export job and not provided manually.
Resolution
In order to use manual created connector files for updating Users, kindly use the User Connector. Refer to KBA 2202835 to download the correct connector template.
See Also
2202835 - LMS connector template Download
Keywords
User Connector, User Connector - SF, Failing, Fail, Error, File formatting, format , KBA , LOD-SF-LMS-CON , Connectors , Problem