[midPoint] inbound that returns only the first entry from a list
Fabian Noll-Dukiewicz
fabian.noll-dukiewicz at fndit.de
Fri Jul 22 13:08:29 CEST 2022
Hi,
you can tokenize your input (inArr = input.tokenize(',') to create an array. After that you can loop through your values or just return the first one (return inArr[0]).
Hope that helps.
Kind regards,
Fabian
Von: Hsin-Fang Hsu <hsin-fang.hsu at itconcepts.ch>
Datum: Freitag, 22. Juli 2022 um 10:52
An: midPoint General Discussion <midpoint at lists.evolveum.com>
Betreff: [midPoint] inbound that returns only the first entry from a list
Hi,
In the resource, the attribute ri:mail is a list. In the inbound, I just want to take the first entry in the mail list and target it to emailAddress.
How can I do this?
The code below simply results in the error: Attempt to add 2 values to a single-valued item emailAddress
The input of the inbound attribute is always just one value instead of a list, so I cannot check if the input is a list.
<attribute>
<ref>ri:mail</ref>
<inbound>
<expression>
<script>
<code>
log.info("--input is:"+input)
return input
</code>
</script>
</expression>
<target>
<path>emailAddress</path>
</target>
</inbound>
</attribute>
Thank you very much for your help in advance!
Best regards,
Hsin-Fang
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.evolveum.com/pipermail/midpoint/attachments/20220722/60c4819e/attachment.htm>
More information about the midPoint
mailing list