@Override protected boolean processCustomSaveDocumentBusinessRules(Document document) { if (!(document instanceof IdentityManagementGroupDocument)) { return false; } IdentityManagementGroupDocument groupDoc = (IdentityManagementGroupDocument) document; boolean valid = true; GlobalVariables.getMessageMap().addToErrorPath(KRADConstants.DOCUMENT_PROPERTY_NAME); valid &= validAssignGroup(groupDoc); valid &= validDuplicateGroupName(groupDoc); getDictionaryValidationService() .validateDocumentAndUpdatableReferencesRecursively( document, getMaxDictionaryValidationDepth(), true, false); valid &= validateGroupQualifier(groupDoc.getQualifiers(), groupDoc.getKimType()); valid &= validGroupMemberActiveDates(groupDoc.getMembers()); // KULRICE-6858 Validate group members are in identity system valid &= validGroupMemberPrincipalIDs(groupDoc.getMembers()); GlobalVariables.getMessageMap().removeFromErrorPath(KRADConstants.DOCUMENT_PROPERTY_NAME); return valid; }