[midPoint] inbound that returns only the first entry from a list

Hsin-Fang Hsu hsin-fang.hsu at itconcepts.ch
Fri Jul 22 13:21:08 CEST 2022


Hi Fabian,

Thank you very much for the reply.

But every time there is just one input is passed in the inbound expression. It’s not a list that separated with “,”. Therefore, your proposal doesn’t work.
Is there a way to make midpoint take the whole data from ri:mail as an input instead of take each entry in the ri:mail as input?

Thank you very much for your help!

Best regards,
Hsin-Fang

From: Fabian Noll-Dukiewicz <fabian.noll-dukiewicz at fndit.de>
Sent: Friday, July 22, 2022 1:08 PM
To: Hsin-Fang Hsu <hsin-fang.hsu at itconcepts.ch>; midPoint General Discussion <midpoint at lists.evolveum.com>
Subject: AW: [midPoint] inbound that returns only the first entry from a list

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<mailto:hsin-fang.hsu at itconcepts.ch>>
Datum: Freitag, 22. Juli 2022 um 10:52
An: midPoint General Discussion <midpoint at lists.evolveum.com<mailto: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/402e8eae/attachment-0001.htm>


More information about the midPoint mailing list