Restricting user to request only one entitlement from Manage Access

Hello Sruthi. On the message, the “Policy Violations will occur” banner is the standard warning. It is not replaced by the custom violation description. The requester can click the violation to view its available details (docs). You can set the violation description with setDescription(...) and associate the constraint with setConstraint(constraint), as shown in this Advanced Policy example.

For the repeated review page, the rule should return null once the projected state no longer violates the policy. I would log the projected entitlement count after the user removes one entitlement and confirm the rule is no longer creating a PolicyViolation.

Also, avoid calling remove() or removeAll() directly on collections returned from the projected identity, since that can modify the future identity object used by later evaluations. Copy the values into a separate list first and compare there (reference).