Symptom
Encounter the following error when trying to Save data to the "Payment Information" portlet via the Personal Information page -:
Error message reads -:
Remote Exception: RuntimeException; nested exception is: com.successfactors.sca.ServiceSystemException: Remote Exception: while trying to invoke the method com.successfactors.genericobject.bean.businessobjects.Country.getCode() of a null object returned from com.successfactors.workstructure.bean.core.model.PaymentMethodAssignmentV3.getCountry(); nested exception is: java.lang.NullPointerException: while trying to invoke the method com.successfactors.genericobject.bean.businessobjects.Country.getCode() of a null object returned from com.successfactors.workstructure.bean.core.model.PaymentMethodAssignmentV3.getCountry()
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 Employee Central
Reproducing the Issue
The issue can be reproduced depending on configuration of the Payment Method object association with the Country object (if the association Required status is set to NO).
Cause
One or more Payment Methods exist in the system without a Country associated (Payment Method Assignment). Hence the NullPointException (when trying to getCountry, NULL is returned because one or more Payment Methods have no Payment Method Assignment (Country) value set in the associated section "Payment Method Assignment" of the Payment Method data object
Resolution
Step 1 - Data Correction
- Navigate to Admin Center > Manage Data
- In the first search box, choose "Payment Method"
- In the second seach box, click the drop-down arrow and select the first Payment Method in the list
- Verify that a Country has been defined in the Payment Method Assignment section
- If no Country is specified, please use Take Action > Make Correction and specify a Country and then save
- Proceed to check every Payment Method and verify they all have a Country set
Step 2 - Configurtion Correction
- Navigate to Admin Center > Configure Object Definition
- In the first search box, choose "Object Definition"
- In the second seach box, choose "Payment Method"
- Click Take Action > Make Correction and scroll down to the Association section
- Click "Details" next to the "Payment Method Assignment" association
- Set the "Required" field to "Yes". Then click "Done" and then "Save"
Now when trying to create or update a Payment Method without a Payment Method Assignment (Country) specified, the following error will be displayed -:
Keywords
Payment Information PaymentMethodAssignmentV3.getCountry NullPointerException PAY-1449 Payment Method Payment Method Assignment PAY-1449 , KBA , LOD-SF-EC-PAY , Payment Information (Bank Information) , Problem