Share all details related to your problem, including any error messages you may have received.
IIQ 8.4
We recently started using an ‘Immediate Termination’ Quicklink Workflow for special cases. All other terminations ustilize the standard framework Leaver workflow. When we use the Immediate Termination it works fine except upon next HR aggregation and Identity Refresh the already terminated Identity is seen to have the ‘Record Status’ from HR changed and it triggers the Termination workflow. As part of the termination workflow, we set ‘IIQLifecycleStatus’ to ‘TerminationProcessed’. I’m trying to add into the trigger code that if ‘IIQLifecycleStatus’ equals ‘TerminationProcessed’ then return false and don’t run the Leaver Workflow again.
I’m getting a nullPointer error when an Identity is refreshed and their ‘IIQLifecycleStatus’ is Empty/NULL.
I was hoping someone could assist in pointing out where I’m going wrong?
Tested your method with rule, i don’t see any Null pointer. May be you have some other place where the nullpointer should be. You can put some more logs.
Try One more thing, In trigger rule before call of isTriggerLeaverRule(context, previousIdentity, newIdentity), put some logs to see previousIdentity and newIdentity. sometimes it returns void. So that that case you need to handle before calling isTriggerLeaverRule.
Try below to use StringUtils API, it will look more cleaner.
``
import org.apache.commons.lang3.StringUtils;
public static boolean isLeaverCustomTriggerRule(SailPointContext context, Identity previousIdentity, Identity newIdentity) {
Thanks for the replies and the help! Worked for hours with constant errors and think it ended up being some malfomed quotes. Once I change them all it works find now.