Symptom
While publishing Compensation data back to Employee Central, there is an error within the publishing job details.
This can be caused by a number of issues from employee data to template configuration.
In this article we look at the following error from job details.
**Image/data in this KBA is from SAP internal systems, sample data, or demo systems. Any resemblance to real data is purely coincidental**
Environment
- SAP SuccessFactors Compensation
Reproducing the Issue
To replicate this error message, do the following
- Complete worksheets
- Navigate to Plan Setup> Complete Compensation Cycle> Publish Data and select a publishing option
- Trigger job and job will fail (This can be checked from Provisioning>Monitor Jobs)
View the jobs details and you'll see the following error.
Error in full and from server logs is as follows.
Full exception:com.successfactors.jobscheduler.ScheduledJobExecutionException: java.lang.NullPointerException: while trying to invoke the method com.successfactors.compensation.bean.vo.ec.CompEcPublishJob.setPublishEndtime(java.sql.Timestamp) of a null object loaded from field com.successfactors.compensation.service.scheduledjob.CompPublishECDataJob.publishJob of an object loaded from local variable 'this'
at com.successfactors.jobscheduler.jobimpl.SimpleJob.execute(SimpleJob.java:495)
This can also be in the form of "this.publishJob"
Error in full and from server logs is as follows.
Full exception:com.successfactors.jobscheduler.ScheduledJobExecutionException: java.lang.NullPointerException: Cannot invoke
"com.successfactors.compensation.bean.vo.ec.CompEcPublishJob.setPublishEndtime(java.sql.Timestamp)" because "this.publishJob" is null
at com.successfactors.jobscheduler.jobimpl.SimpleJob.execute(SimpleJob.java:518)
Cause
payComponentNonRecurring or payComponentRecurring might not be enabled.
Resolution
To resolve this issue, please go to Admin Center> Manage Business Configuration and you will find the "payComponentNonRecurring" or "payComponentRecurring" may be disabled. Even if you are not using payComponentNonRecurring kindly enable it as there are a few features required to create compensation template and publish worksheets, even when you are not using them. And payComponentNonRecurring is one of them.
The PayComponent that you are using for publishing had to be updated: Used for Comp Planning - Both
These are required and should be enabled. So, please have these enabled and once saved publishing should be successful.
If its still doesn't work there might be chances that there is an EC rule obstructing the publishing, Try to enable the do not trigger EC rules from Compensation home>plan setup>settings> advance settings>check do not trigger EC rules >Publish it again.
Keywords
error publishing, local variable 'this', while trying to invoke the method, CompPublishECDataJob, compensation publish error, 'this', npe cmp error, publishJob, java.lang.NullPointerException , this.publishJob, this.publishJob is null, Full exception:com.successfactors.jobscheduler.ScheduledJobExecutionException: java.lang.NullPointerException,com.successfactors.compensation.bean.vo.ec.CompEcPublishJob.setPublishEndtime(java.sql.Timestamp), "null", Publish error in compensation , KBA , LOD-SF-CMP-EC , EC data, EC mappings, configuration & settings , LOD-SF-CMP , Compensation Management , Problem