[midPoint] bulk action task for removing assignment
Paul Caskey
pcaskey at internet2.edu
Fri Aug 18 15:05:36 CEST 2023
Is there anyway to place limits on the bulk action task below?
It crashes midpoint completely within about an hour, forcing a hard reboot (version 4.7.1).
This was the error:
Couldn't execute script: com.evolveum.midpoint.util.exception.ScriptExecutionException: Couldn't execute action 'unassign' on POV:user:1fb687f6-028e-4758-a877-3a6b932b1097(someone at somedomain.com): Java heap space
From: midPoint <midpoint-bounces at lists.evolveum.com> On Behalf Of Paul Caskey via midPoint
Sent: Thursday, August 17, 2023 2:03 PM
To: midPoint General Discussion <midpoint at lists.evolveum.com>
Cc: Paul Caskey <pcaskey at internet2.edu>; Pavol Mederly <mederly at evolveum.com>
Subject: Re: [midPoint] bulk action task for removing assignment
Thanks, Pavol!
For the benefit of the list, here is the bulk action script which will remove all OrgType assignments from all users:
<s:search xmlns:s=http://midpoint.evolveum.com/xml/ns/public/model/scripting-3
xmlns:q=http://prism.evolveum.com/xml/ns/public/query-3>
<s:type>UserType</s:type>
<s:unassign>
<s:filter>
<q:ref>
<q:path>targetRef</q:path>
<q:value type="OrgType"/>
</q:ref>
</s:filter>
</s:unassign>
</s:search>
From: midPoint <midpoint-bounces at lists.evolveum.com<mailto:midpoint-bounces at lists.evolveum.com>> On Behalf Of Pavol Mederly via midPoint
Sent: Thursday, August 17, 2023 1:35 PM
To: midpoint at lists.evolveum.com<mailto:midpoint at lists.evolveum.com>
Cc: Pavol Mederly <mederly at evolveum.com<mailto:mederly at evolveum.com>>
Subject: Re: [midPoint] bulk action task for removing assignment
Hello Paul,
this is a quirk from the prehistory of midPoint: references are not filtered using q:equal but using q:ref.
Furthermore, you may eliminate custom coding by using "unassign" action that provides a filter for assigments to be removed.
See e.g. https://github.com/Evolveum/midpoint/blob/75e549f2e5ce52ab4b008c18e2e7ba8b2072e151/model/model-intest/src/test/resources/scripting/unassign-captain-from-jack.xml#L18-L26 for an example.
Hope this helps. No guarantees, though. :)
--
Pavol Mederly
Software developer
evolveum.com
On 17/08/2023 17:03, Paul Caskey via midPoint wrote:
I am trying to remove all user assignments to OrgType objects in a bulk action task but am having trouble.
I think I have the filter correct, but I’m having trouble with the script when it tries to examine the type on a given assignment (to prepare it for deletion).
This is the filter:
<q:filter>
<q:equal>
<q:path>assignment/targetRef</q:path>
<q:value type="OrgType" />
</q:equal>
</q:filter>
And this is the first part of the script that checks the assignment for a user:
UserType user = input as UserType
for (AssignmentType assignment : user.getAssignment()) {
if (aassignment.targetRef.type == 'OrgType') {
The error I am getting is:
class com.evolveum.midpoint.prism.impl.PrismReferenceValueImpl cannot be cast to class com.evolveum.midpoint.prism.PrismPropertyValue (com.evolveum.midpoint.prism.impl.PrismReferenceValueImpl and com.evolveum.midpoint.prism.PrismPropertyValue are in unnamed module of loader org.springframework.boot.loader.LaunchedURLClassLoader @2e0fa5d3)
Thanks in advance for any help!
-Paul
_______________________________________________
midPoint mailing list
midPoint at lists.evolveum.com<mailto:midPoint at lists.evolveum.com>
https://lists.evolveum.com/mailman/listinfo/midpoint
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.evolveum.com/pipermail/midpoint/attachments/20230818/0900a6cd/attachment.htm>
More information about the midPoint
mailing list