[midPoint] Mapping error in object template.

Deepak Natarajan dnataraj at trilobytesystems.com
Wed Sep 10 13:09:57 CEST 2014


Hi everyone -

I have a mapping in a new user object template which works perfectly
(well, correctly) on my local environment (non-windows, Tomcat 7+,
Midpoint 3.1-SNAP..) but it fails on another environment (MPT
configuration unchanged) - windows server 2008 R2, Tomcat 7.0, same
version of Midpoint etc.

The mapping in question is :
    <mapping>
        <name>Midpoint Role to emulate a real Group</name>
        <authoritative>true</authoritative>
        <source>
            <name>userGroupWithType</name>
            <path>extension/apos:group</path>
        </source>
        <expression>
            <assignmentTargetSearch>
                <targetType>c:RoleType</targetType>
                <filter>
                    <q:equal>
                        <q:path>extension/apos:group</q:path>
                        <expression>
                            <script>
                                <code>
                                    'apos-' +
userGroupWithType.split(":")[0]
                                </code>
                            </script>
                        </expression>
                    </q:equal>
                </filter>
                <createOnDemand>true</createOnDemand>
                <populateObject>
                    <populateItem>
                        <expression>
                            <script>
                                <code>
                                    'apos-' +
userGroupWithType.split(":")[0]
                                </code>
                            </script>
                        </expression>
                        <target>
                            <path>name</path>
                        </target>
                    </populateItem>
                    <populateItem>
                        <expression>
                            <script>
                                <code>
                                    'apos-' +
userGroupWithType.split(":")[0]
                                </code>
                            </script>
                        </expression>
                        <target>
                            <path>extension/apos:group</path>
                        </target>
                    </populateItem>
                    <populateItem>
                        <expression>
                            <script>
                                <code>
                                    userGroupWithType.split(":")[1]
                                </code>
                            </script>
                        </expression>
                        <target>
                            <path>extension/apos:groupType</path>
                        </target>
                    </populateItem>
                </populateObject>
            </assignmentTargetSearch>
        </expression>
        <target>
            <path>assignment</path>
        </target>
    </mapping>

And the exception is :

2014-09-10 12:20:41,886 [] [http-bio-8081-exec-5] ERROR
(com.evolveum.midpoint.model.impl.lens.projector.Projector): Runtime
error in projector: No type mapping for XSD type
{http://www.w3.org/2001/XMLSchema}anyType({.../common/common-3}userGroupWithType=PPV(String:Faelles-SesuONDistrikter:common);
) in expression in mapping 'Midpoint Role to emulate a real Group' in
objectTemplate:f3cc46c6-2aaf-4094-8923-f4640f95fe03(New User Template)
java.lang.RuntimeException: No type mapping for XSD type
{http://www.w3.org/2001/XMLSchema}anyType({.../common/common-3}userGroupWithType=PPV(String:Faelles-SesuONDistrikter:common);
) in expression in mapping 'Midpoint Role to emulate a real Group' in
objectTemplate:f3cc46c6-2aaf-4094-8923-f4640f95fe03(New User Template)
    at
com.evolveum.midpoint.model.common.expression.evaluator.AbstractValueTransformationExpressionEvaluator$1.process(AbstractValueTransformationExpressionEvaluator.java:432)
~[model-common-3.1-SNAPSHOT.jar:na]
    at
com.evolveum.midpoint.model.common.expression.evaluator.AbstractValueTransformationExpressionEvaluator$1.process(AbstractValueTransformationExpressionEvaluator.java:350)
~[model-common-3.1-SNAPSHOT.jar:na]
    at com.evolveum.midpoint.util.MiscUtil.carthesian(MiscUtil.java:285)
~[util-3.1-SNAPSHOT.jar:na]
    at com.evolveum.midpoint.util.MiscUtil.carthesian(MiscUtil.java:275)
~[util-3.1-SNAPSHOT.jar:na]
    at
com.evolveum.midpoint.model.common.expression.evaluator.AbstractValueTransformationExpressionEvaluator.evaluateRelativeExpression(AbstractValueTransformationExpressionEvaluator.java:440)
~[model-common-3.1-SNAPSHOT.jar:na]
    at
com.evolveum.midpoint.model.common.expression.evaluator.AbstractValueTransformationExpressionEvaluator.evaluate(AbstractValueTransformationExpressionEvaluator.java:112)
~[model-common-3.1-SNAPSHOT.jar:na]
    at
com.evolveum.midpoint.model.common.expression.Expression.evaluate(Expression.java:136)
~[model-common-3.1-SNAPSHOT.jar:na]
    at
com.evolveum.midpoint.model.common.mapping.Mapping.evaluateExpression(Mapping.java:962)
~[model-common-3.1-SNAPSHOT.jar:na]
    at
com.evolveum.midpoint.model.common.mapping.Mapping.evaluate(Mapping.java:510)
~[model-common-3.1-SNAPSHOT.jar:na]
    at
com.evolveum.midpoint.model.impl.lens.LensUtil.evaluateMapping(LensUtil.java:564)
~[model-impl-3.1-SNAPSHOT.jar:na]
    at
com.evolveum.midpoint.model.impl.lens.projector.ObjectTemplateProcessor.collectTripleFromMappings(ObjectTemplateProcessor.java:314)
~[model-impl-3.1-SNAPSHOT.jar:na]
    at
com.evolveum.midpoint.model.impl.lens.projector.ObjectTemplateProcessor.collectTripleFromTemplate(ObjectTemplateProcessor.java:265)
~[model-impl-3.1-SNAPSHOT.jar:na]
    at
com.evolveum.midpoint.model.impl.lens.projector.ObjectTemplateProcessor.processTemplate(ObjectTemplateProcessor.java:168)
~[model-impl-3.1-SNAPSHOT.jar:na]
    at
com.evolveum.midpoint.model.impl.lens.projector.FocusProcessor.processFocusFocus(FocusProcessor.java:262)
~[model-impl-3.1-SNAPSHOT.jar:na]
    at
com.evolveum.midpoint.model.impl.lens.projector.FocusProcessor.processFocus(FocusProcessor.java:182)
~[model-impl-3.1-SNAPSHOT.jar:na]
    at
com.evolveum.midpoint.model.impl.lens.projector.Projector.project(Projector.java:154)
~[model-impl-3.1-SNAPSHOT.jar:na]
    at
com.evolveum.midpoint.model.impl.lens.Clockwork.click(Clockwork.java:199) [model-impl-3.1-SNAPSHOT.jar:na]
    at
com.evolveum.midpoint.model.impl.lens.Clockwork.run(Clockwork.java:156)
[model-impl-3.1-SNAPSHOT.jar:na]
    at
com.evolveum.midpoint.model.impl.controller.ModelController.executeChanges(ModelController.java:516)
[model-impl-3.1-SNAPSHOT.jar:na]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
~[na:1.7.0_21]
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
~[na:1.7.0_21]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
~[na:1.7.0_21]
    at java.lang.reflect.Method.invoke(Unknown Source) ~[na:1.7.0_21]
    at
org.apache.wicket.proxy.LazyInitProxyFactory$JdkHandler.invoke(LazyInitProxyFactory.java:435)
[wicket-ioc-6.16.0.jar:6.16.0]
    at com.sun.proxy.$Proxy132.executeChanges(Unknown Source) [na:na]
    at
com.evolveum.midpoint.web.page.admin.users.PageUsers.reconcilePerformed(PageUsers.java:583)
[PageUsers.class:na]
    at
com.evolveum.midpoint.web.page.admin.users.PageUsers.access$500(PageUsers.java:88)
[PageUsers.class:na]
    at
com.evolveum.midpoint.web.page.admin.users.PageUsers$14.onClick(PageUsers.java:360)
[PageUsers$14.class:na]
    at
com.evolveum.midpoint.web.component.menu.cog.MenuLinkPanel.onClick(MenuLinkPanel.java:98)
[MenuLinkPanel.class:na]
    at
com.evolveum.midpoint.web.component.menu.cog.MenuLinkPanel$2.onClick(MenuLinkPanel.java:56)
[MenuLinkPanel$2.class:na]
    at
org.apache.wicket.ajax.markup.html.AjaxLink$1.onEvent(AjaxLink.java:86)
[wicket-core-6.16.0.jar:6.16.0]
    at
org.apache.wicket.ajax.AjaxEventBehavior.respond(AjaxEventBehavior.java:123)
[wicket-core-6.16.0.jar:6.16.0]
    at
org.apache.wicket.ajax.AbstractDefaultAjaxBehavior.onRequest(AbstractDefaultAjaxBehavior.java:633)
[wicket-core-6.16.0.jar:6.16.0]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
~[na:1.7.0_21]
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
~[na:1.7.0_21]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
~[na:1.7.0_21]
    at java.lang.reflect.Method.invoke(Unknown Source) ~[na:1.7.0_21]
    at
org.apache.wicket.RequestListenerInterface.internalInvoke(RequestListenerInterface.java:258)
[wicket-core-6.16.0.jar:6.16.0]
    at
org.apache.wicket.RequestListenerInterface.invoke(RequestListenerInterface.java:241)
[wicket-core-6.16.0.jar:6.16.0]
    at
org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.invokeListener(ListenerInterfaceRequestHandler.java:250)
[wicket-core-6.16.0.jar:6.16.0]
    at
org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.respond(ListenerInterfaceRequestHandler.java:236)
[wicket-core-6.16.0.jar:6.16.0]
    at
org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:862)
[wicket-core-6.16.0.jar:6.16.0]
    at
org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
[wicket-request-6.16.0.jar:6.16.0]
    at
org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:261)
[wicket-core-6.16.0.jar:6.16.0]
    at
org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:218)
[wicket-core-6.16.0.jar:6.16.0]
    at
org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:289)
[wicket-core-6.16.0.jar:6.16.0]
    at
org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:259)
[wicket-core-6.16.0.jar:6.16.0]
    at
org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:201)
[wicket-core-6.16.0.jar:6.16.0]
    at
org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:282)
[wicket-core-6.16.0.jar:6.16.0]
    at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
[catalina.jar:7.0.39]
    at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
[catalina.jar:7.0.39]
    at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
    at
org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:118)
[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
    at
org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:84)
[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
    at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
    at
org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113)
[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
    at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
    at
org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:103)
[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
    at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
    at
org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:113)
[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
    at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
    at
org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:154)
[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
    at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
    at
org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:45)
[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
    at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
    at
org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilter(BasicAuthenticationFilter.java:150)
[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
    at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
    at
org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:199)
[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
    at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
    at
org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:110)
[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
    at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
    at
org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:50)
[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
    at
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
[spring-web-4.0.6.RELEASE.jar:4.0.6.RELEASE]
    at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
    at
org.springframework.security.web.session.ConcurrentSessionFilter.doFilter(ConcurrentSessionFilter.java:125)
[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
    at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
    at
org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87)
[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
    at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
    at
org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:192)
[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
    at
org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:160)
[spring-security-web-3.2.5.RELEASE.jar:3.2.5.RELEASE]
    at
org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:344)
[spring-web-4.0.6.RELEASE.jar:4.0.6.RELEASE]
    at
org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:261)
[spring-web-4.0.6.RELEASE.jar:4.0.6.RELEASE]
    at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
[catalina.jar:7.0.39]
    at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
[catalina.jar:7.0.39]
    at
com.evolveum.midpoint.web.util.MidPointProfilingServletFilter.doFilter(MidPointProfilingServletFilter.java:86)
[MidPointProfilingServletFilter.class:na]
    at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
[catalina.jar:7.0.39]
    at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
[catalina.jar:7.0.39]
    at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
[catalina.jar:7.0.39]
    at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
[catalina.jar:7.0.39]
    at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
[catalina.jar:7.0.39]
    at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
[catalina.jar:7.0.39]
    at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
[catalina.jar:7.0.39]
    at
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:947) [catalina.jar:7.0.39]
    at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
[catalina.jar:7.0.39]
    at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
[catalina.jar:7.0.39]
    at
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1009)
[tomcat-coyote.jar:7.0.39]
    at
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
[tomcat-coyote.jar:7.0.39]
    at
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
[tomcat-coyote.jar:7.0.39]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
[na:1.7.0_21]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown
Source) [na:1.7.0_21]
    at java.lang.Thread.run(Unknown Source) [na:1.7.0_21]
Caused by: java.lang.IllegalArgumentException: No type mapping for XSD
type {http://www.w3.org/2001/XMLSchema}anyType
    at
com.evolveum.midpoint.prism.xml.XsdTypeMapper.toJavaType(XsdTypeMapper.java:184)
~[prism-3.1-SNAPSHOT.jar:na]
    at
com.evolveum.midpoint.prism.xml.XsdTypeMapper.toJavaType(XsdTypeMapper.java:173)
~[prism-3.1-SNAPSHOT.jar:na]
    at
com.evolveum.midpoint.model.common.expression.script.jsr223.Jsr223ScriptEvaluator.evaluate(Jsr223ScriptEvaluator.java:134)
~[model-common-3.1-SNAPSHOT.jar:na]
    at
com.evolveum.midpoint.model.common.expression.script.ScriptExpression.evaluate(ScriptExpression.java:110)
~[model-common-3.1-SNAPSHOT.jar:na]
    at
com.evolveum.midpoint.model.common.expression.script.ScriptExpressionEvaluator.transformSingleValue(ScriptExpressionEvaluator.java:58)
~[model-common-3.1-SNAPSHOT.jar:na]
    at
com.evolveum.midpoint.model.common.expression.evaluator.AbstractValueTransformationExpressionEvaluator.evaluateScriptExpression(AbstractValueTransformationExpressionEvaluator.java:276)
~[model-common-3.1-SNAPSHOT.jar:na]
    at
com.evolveum.midpoint.model.common.expression.evaluator.AbstractValueTransformationExpressionEvaluator.evaluateAbsoluteExpression(AbstractValueTransformationExpressionEvaluator.java:206)
~[model-common-3.1-SNAPSHOT.jar:na]
    at
com.evolveum.midpoint.model.common.expression.evaluator.AbstractValueTransformationExpressionEvaluator.evaluate(AbstractValueTransformationExpressionEvaluator.java:107)
~[model-common-3.1-SNAPSHOT.jar:na]
    at
com.evolveum.midpoint.model.common.expression.Expression.evaluate(Expression.java:136)
~[model-common-3.1-SNAPSHOT.jar:na]
    at
com.evolveum.midpoint.model.common.expression.evaluator.AbstractSearchExpressionEvaluator.evaluatePopulateExpression(AbstractSearchExpressionEvaluator.java:311)
~[model-common-3.1-SNAPSHOT.jar:na]
    at
com.evolveum.midpoint.model.common.expression.evaluator.AbstractSearchExpressionEvaluator.createOnDemand(AbstractSearchExpressionEvaluator.java:247)
~[model-common-3.1-SNAPSHOT.jar:na]
    at
com.evolveum.midpoint.model.common.expression.evaluator.AbstractSearchExpressionEvaluator.transformSingleValue(AbstractSearchExpressionEvaluator.java:175)
~[model-common-3.1-SNAPSHOT.jar:na]
    at
com.evolveum.midpoint.model.common.expression.evaluator.AbstractValueTransformationExpressionEvaluator$1.process(AbstractValueTransformationExpressionEvaluator.java:420)
~[model-common-3.1-SNAPSHOT.jar:na]
    ... 100 common frames omitted


Has anyone encountered this before? The error occurs when I am 
importing a user account or reconciling the user  - essentially when the
mapping kicks in.

BR/
-- 
Deepak Natarajan







More information about the midPoint mailing list