[midPoint] No such property: iterationToken

Deepak Natarajan dnataraj at trilobytesystems.com
Tue Jul 1 12:37:47 CEST 2014


Hi -

I'm trying to formulate unique uid's for the user on an inbound mapping.
I am using iterationToken (I am using a snippet from one of Ivan's
examples).

This is my attribute mapping

                <attribute>
                    <ref>icfs:name</ref>
                    <limitations>
                        <minOccurs>0</minOccurs>
                        <access>
                            <read>true</read>
                            <add>true</add>
                            <modify>true</modify>
                        </access>
                    </limitations>
                    <inbound>
                        <c:expression>
                            <c:script>
                                <c:code>
                                    input + '-apos' + iterationToken
                                </c:code>
                            </c:script>
                        </c:expression>
                        <target>
                            <path>$user/name</path>
                        </target>
                    </inbound>
                </attribute>

followed by the iteration definition :

                <iteration>
                    <maxIterations>999</maxIterations>
                    <tokenExpression>
                        <script>
                            <code>
                                if (iteration == 0) {
                                    return "";
                                } else {
                                    return "" + (iteration + 1)
                                }
                            </code>
                        </script>
                    </tokenExpression>
                </iteration>

I am getting the following exception, when I import users :

Caused by:
com.evolveum.midpoint.util.exception.ExpressionEvaluationException:
groovy.lang.MissingPropertyException: No such property: iterationToken
for class: Script17 expression in mapping in inbound expression for
{http://midpoint.evolveum.com/xml/ns/public/connector/icf-1/resource-schema-3}name
in resource:036f0100-2fe8-49e1-a8fd-5548374f8703(APOS CSV Feeder
Resource Definition)
        at
com.evolveum.midpoint.model.common.expression.script.jsr223.Jsr223ScriptEvaluator.evaluate(Jsr223ScriptEvaluator.java:124)
~[model-common-3.0.jar:na]
        at
com.evolveum.midpoint.model.common.expression.script.ScriptExpression.evaluate(ScriptExpression.java:108)
~[model-common-3.0.jar:na]
        at
com.evolveum.midpoint.model.common.expression.script.ScriptExpressionEvaluator.transformSingleValue(ScriptExpressionEvaluator.java:58)
~[model-common-3.0.jar:na]
        at
com.evolveum.midpoint.model.common.expression.evaluator.AbstractValueTransformationExpressionEvaluator$1.process(AbstractValueTransformationExpressionEvaluator.java:420)
~[model-common-3.0.jar:na]
        ... 50 common frames omitted
Caused by: javax.script.ScriptException:
groovy.lang.MissingPropertyException: No such property: iterationToken
for class: Script17
        at
org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.eval(GroovyScriptEngineImpl.java:323)
~[groovy-1.8.6.jar:1.8.6]
        at
org.codehaus.groovy.jsr223.GroovyCompiledScript.eval(GroovyCompiledScript.java:41)
~[groovy-1.8.6.jar:1.8.6]
        at javax.script.CompiledScript.eval(CompiledScript.java:92)
~[na:1.7.0_45]
        at
com.evolveum.midpoint.model.common.expression.script.jsr223.Jsr223ScriptEvaluator.evaluate(Jsr223ScriptEvaluator.java:122)
~[model-common-3.0.jar:na]
        ... 53 common frames omitted
Caused by: groovy.lang.MissingPropertyException: No such property:
iterationToken for class: Script17
        at
org.codehaus.groovy.runtime.ScriptBytecodeAdapter.unwrap(ScriptBytecodeAdapter.java:50)
~[groovy-1.8.6.jar:1.8.6]
        at
org.codehaus.groovy.runtime.callsite.PogoGetPropertySite.getProperty(PogoGetPropertySite.java:49)
~[groovy-1.8.6.jar:1.8.6]
        at
org.codehaus.groovy.runtime.callsite.AbstractCallSite.callGroovyObjectGetProperty(AbstractCallSite.java:231)
~[groovy-1.8.6.jar:1.8.6]
        at Script17.run(Script17.groovy:2) ~[na:na]
        at
org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.eval(GroovyScriptEngineImpl.java:320)
~[groovy-1.8.6.jar:1.8.6]
        ... 56 common frames omitted

I seem to be following the general guidelines here :
https://wiki.evolveum.com/display/midPoint/Unique+Account+Username+HOWTO

Am I missing something?

Thanks in advance -
BR/Deepak







More information about the midPoint mailing list