<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <p>Please try adding "return null" at the end of the script. If it
      would not help, you can also rewrite it like</p>
    <p>if (ADGroup == null) {<br>
        return null<br>
      }</p>
    <p>etc.<br>
    </p>
    <pre class="moz-signature" cols="72">Pavol Mederly
Software developer
evolveum.com
</pre>
    <div class="moz-cite-prefix">On 26.01.2018 12:35, Pavol Mederly
      wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:932158f1-d000-5b8d-8d17-79682f61caec@evolveum.com">
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
      <p>Hello Jan,</p>
      <p>it is interesting but in my case the script works (invoking it
        as a bulk action, just to test it):</p>
      <p><tt><s:pipeline
          xmlns:s=<a class="moz-txt-link-rfc2396E"
            href="http://midpoint.evolveum.com/xml/ns/public/model/scripting-3"
            moz-do-not-send="true">"http://midpoint.evolveum.com/xml/ns/public/model/scripting-3"</a>></tt><tt><br>
        </tt><tt>    <s:expression xmlns:xsi=<a
            class="moz-txt-link-rfc2396E"
            href="http://www.w3.org/2001/XMLSchema-instance"
            moz-do-not-send="true">"http://www.w3.org/2001/XMLSchema-instance"</a>
          xsi:type="s:SearchExpressionType"></tt><tt><br>
        </tt><tt>        <s:type>ObjectType</s:type></tt><tt><br>
        </tt><tt>        <s:searchFilter></tt><tt><br>
        </tt><tt>            <q:inOid xmlns:q=<a
            class="moz-txt-link-rfc2396E"
            href="http://prism.evolveum.com/xml/ns/public/query-3"
            moz-do-not-send="true">"http://prism.evolveum.com/xml/ns/public/query-3"</a>></tt><tt><br>
        </tt><tt>               
          <q:value>00000000-0000-0000-0000-000000000002</q:value></tt><tt><br>
        </tt><tt>                <!-- administrator --></tt><tt><br>
        </tt><tt>            </q:inOid></tt><tt><br>
        </tt><tt>        </s:searchFilter></tt><tt><br>
        </tt><tt>    </s:expression></tt><tt><br>
        </tt><tt>    <s:expression xmlns:xsi=<a
            class="moz-txt-link-rfc2396E"
            href="http://www.w3.org/2001/XMLSchema-instance"
            moz-do-not-send="true">"http://www.w3.org/2001/XMLSchema-instance"</a>
          xsi:type="s:ActionExpressionType"></tt><tt><br>
        </tt><tt>        <s:type>execute-script</s:type></tt><tt><br>
        </tt><tt>        <s:parameter></tt><tt><br>
        </tt><tt>            <s:name>script</s:name></tt><tt><br>
        </tt><tt>            <c:value
          xsi:type="c:ScriptExpressionEvaluatorType" xmlns:c=<a
            class="moz-txt-link-rfc2396E"
            href="http://midpoint.evolveum.com/xml/ns/public/common/common-3"
            moz-do-not-send="true">"http://midpoint.evolveum.com/xml/ns/public/common/common-3"</a>></tt><tt><br>
        </tt><tt>                <c:code></tt><tt><br>
        </tt><tt>                     import
          com.evolveum.midpoint.xml.ns._public.common.common_3.AssignmentType;</tt><tt><br>
        </tt><tt>           import
com.evolveum.midpoint.xml.ns._public.common.common_3.ObjectReferenceType;</tt><tt><br>
        </tt><tt>           import
          com.evolveum.midpoint.xml.ns._public.common.common_3.RoleType;</tt><tt><br>
        </tt><tt>           import
          com.evolveum.midpoint.xml.ns._public.common.common_3.OrgType;</tt><tt><br>
        </tt><tt>           import java.util.*;</tt><tt><br>
        </tt><tt>           </tt><tt><br>
        </tt><tt>           ADGroup = "End user"</tt><tt><br>
        </tt><tt>           log.warn("XXX assigning from SAP role {}",
          ADGroup)</tt><tt><br>
        </tt><tt>           if (ADGroup != null) {</tt><tt><br>
        </tt><tt>                orgName = ADGroup;</tt><tt><br>
        </tt><tt>                </tt><tt><br>
        </tt><tt>                org =
          midpoint.searchObjectByName(RoleType.class, orgName);</tt><tt><br>
        </tt><tt>                if (org != null)</tt><tt><br>
        </tt><tt>                {</tt><tt><br>
        </tt><tt>                    log.info("org {}" , org)</tt><tt><br>
        </tt><tt>                    orgOrt = new ObjectReferenceType();</tt><tt><br>
        </tt><tt>                    orgOrt.setOid(org.getOid());</tt><tt><br>
        </tt><tt>                   
          orgOrt.setType(RoleType.COMPLEX_TYPE);</tt><tt><br>
        </tt><tt><br>
        </tt><tt>                    AssignmentType assignment = new
          AssignmentType();</tt><tt><br>
        </tt><tt>                    assignment.asPrismContainerValue()</tt><tt><br>
        </tt><tt>                    assignment.setTargetRef(orgOrt);</tt><tt><br>
        </tt><tt>                    return assignment</tt><tt><br>
        </tt><tt>                }</tt><tt><br>
        </tt><tt>           }</tt><tt><br>
        </tt><tt>                </c:code></tt><tt><br>
        </tt><tt>            </c:value></tt><tt><br>
        </tt><tt>        </s:parameter></tt><tt><br>
        </tt><tt>   </s:expression></tt><tt><br>
        </tt><tt></s:pipeline></tt><tt><br>
        </tt><br>
      </p>
      <p>Just a few notes (but these have no impact on the exception you
        experience):</p>
      <ol>
        <li>You use orgName/org but you search for RoleType.class - it
          probably should be OrgType.class.</li>
        <li>assignment.asPrismContainerValue() can be probably
          eliminated; it does nothing.</li>
      </ol>
      <p>Maybe you could rewrite your groovy code in a bit different
        way... I really don't know.<br>
      </p>
      <pre class="moz-signature" cols="72">Pavol Mederly
Software developer
evolveum.com
</pre>
      <div class="moz-cite-prefix">On 23.01.2018 7:32, Jan Kaspar wrote:<br>
      </div>
      <blockquote type="cite"
        cite="mid:71X.vQU.4puiiecPnT3.1QPjRW@seznam.cz">Hi Oskar, all,
        <div><br>
        </div>
        <div>Yes i tryed this, but it didnt work. with that code:</div>
        <div><br>
        </div>
        <div>
          <div>            <code></div>
          <div><span style="white-space:pre">             </span>   import
            com.evolveum.midpoint.xml.ns._public.common.common_3.AssignmentType;</div>
          <div><span style="white-space:pre">             </span>   import
com.evolveum.midpoint.xml.ns._public.common.common_3.ObjectReferenceType;</div>
          <div><span style="white-space:pre">             </span>   import
            com.evolveum.midpoint.xml.ns._public.common.common_3.RoleType;</div>
          <div><span style="white-space:pre">             </span>   import
            com.evolveum.midpoint.xml.ns._public.common.common_3.OrgType;</div>
          <div><span style="white-space:pre">             </span>   import
            java.util.*;</div>
          <div><span style="white-space:pre">             </span>   </div>
          <div><span style="white-space:pre">             </span>   log.warn("XXX
            assigning from SAP role {}" , ADGroup)</div>
          <div><span style="white-space:pre">             </span>   if (ADGroup !=
            null){</div>
          <div><span style="white-space:pre">                             </span>orgName =
            ADGroup;</div>
          <div><span style="white-space:pre">                     </span>    </div>
          <div>                org =
            midpoint.searchObjectByName(RoleType.class, orgName);</div>
          <div>                if (org != null)</div>
          <div>                {</div>
          <div>                    log.info("org {}" , org)</div>
          <div>                    orgOrt = new ObjectReferenceType();</div>
          <div><span style="white-space:pre">                     </span>       
            orgOrt.setOid(org.getOid());</div>
          <div><span style="white-space:pre">                     </span>       
            orgOrt.setType(RoleType.COMPLEX_TYPE);</div>
          <div><br>
          </div>
          <div><span style="white-space:pre">                     </span>       
            AssignmentType assignment = new AssignmentType();</div>
          <div><span style="white-space:pre">                     </span>       
            assignment.asPrismContainerValue()</div>
          <div><span style="white-space:pre">                     </span>       
            assignment.setTargetRef(orgOrt);</div>
          <div><span style="white-space:pre">                     </span>        return
            assignment</div>
          <div><span style="white-space:pre">                     </span>    }</div>
          <div><span style="white-space:pre">             </span>   }</div>
          <div><span style="white-space:pre">             </span>   </code></div>
        </div>
        <div><br>
        </div>
        <div>I got error:</div>
        <div><br>
        </div>
        <div>
          <div><br>
          </div>
          <div><dt
style="box-sizing:border-box;line-height:1.42857;font-weight:700;float:left;width:100px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap;color:rgb(51,51,51);font-family:'Source
              Sans Pro','Helvetica
              Neue',Helvetica,Arial,sans-serif;font-size:14px">Operation</dt>
            <dd
style="box-sizing:border-box;line-height:1.42857;margin-left:130px;word-break:break-word;color:rgb(51,51,51);font-family:'Source
              Sans Pro','Helvetica
              Neue',Helvetica,Arial,sans-serif;font-size:14px"><span
                style="box-sizing:border-box;font-weight:700">Reconcile
                user (Gui): {0}</span></dd>
            <dt
style="box-sizing:border-box;line-height:1.42857;font-weight:700;float:left;width:100px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap;color:rgb(51,51,51);font-family:'Source
              Sans Pro','Helvetica
              Neue',Helvetica,Arial,sans-serif;font-size:14px">Message</dt>
            <dd
style="box-sizing:border-box;line-height:1.42857;margin-left:130px;word-break:break-word;color:rgb(51,51,51);font-family:'Source
              Sans Pro','Helvetica
              Neue',Helvetica,Arial,sans-serif;font-size:14px">Couldn't
              reconcile user
              user:08c284d4-8bc8-4b1a-a598-785773c51d62(ales.levinsky).</dd>
            <dd
style="box-sizing:border-box;line-height:1.42857;margin-left:130px;word-break:break-word;color:rgb(51,51,51);font-family:'Source
              Sans Pro','Helvetica
              Neue',Helvetica,Arial,sans-serif;font-size:14px">
              <table
style="box-sizing:border-box;border-spacing:0px;border-collapse:collapse;background-color:transparent;border:0px">
              </table>
            </dd>
            <dd
style="box-sizing:border-box;line-height:1.42857;margin-left:130px;word-break:break-word;color:rgb(51,51,51);font-family:'Source
              Sans Pro','Helvetica
              Neue',Helvetica,Arial,sans-serif;font-size:14px">
              <table
style="box-sizing:border-box;border-spacing:0px;border-collapse:collapse;background-color:transparent;border:0px">
              </table>
            </dd>
            <dt
style="box-sizing:border-box;line-height:1.42857;font-weight:700;float:left;width:100px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap;color:rgb(51,51,51);font-family:'Source
              Sans Pro','Helvetica
              Neue',Helvetica,Arial,sans-serif;font-size:14px">Error</dt>
            <dd
style="box-sizing:border-box;line-height:1.42857;margin-left:130px;word-break:break-word;color:rgb(51,51,51);font-family:'Source
              Sans Pro','Helvetica
              Neue',Helvetica,Arial,sans-serif;font-size:14px">groovy.lang.MissingMethodException:
              No signature of method:
              org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.If() is
              applicable for argument types: (java.lang.Boolean,
              Script31$_run_closure1) values: [true,
              Script31$_run_closure1@2eb5683] Possible solutions:
              find(), any(), is(java.lang.Object), wait(), dump(),
              grep() in expression in mapping in inbound expression for
              {<a class="moz-txt-link-freetext"
                href="http://midpoint.evolveum.com/xml/ns/public/resource/instance-3"
                moz-do-not-send="true">http://midpoint.evolveum.com/xml/ns/public/resource/instance-3</a>}memberOf
              in <a class="moz-txt-link-freetext"
                href="resource:746ecf5e-3e8c-11e6-b2f9-3c970e44b9e2%28BLUED"
                moz-do-not-send="true">resource:746ecf5e-3e8c-11e6-b2f9-3c970e44b9e2(BLUED</a>
(LDAP))({.../common/common-3}input=CN=POS_AX_ADMINS,OU=Groups,OU=CZ,DC=domain,DC=local;
              ) in expression in mapping in inbound expression for {<a
                class="moz-txt-link-freetext"
                href="http://midpoint.evolveum.com/xml/ns/public/resource/instance-3"
                moz-do-not-send="true">http://midpoint.evolveum.com/xml/ns/public/resource/instance-3</a>}memberOf
              in <a class="moz-txt-link-freetext"
                href="resource:746ecf5e-3e8c-11e6-b2f9-3c970e44b9e2%28BLUED"
                moz-do-not-send="true">resource:746ecf5e-3e8c-11e6-b2f9-3c970e44b9e2(BLUED</a>
              (LDAP))</dd>
          </div>
        </div>
        <div><br>
        </div>
        <div>Any idea? I fouind some things on internet about bug in
          groovy. But without solution for now.</div>
        <div><br>
        </div>
        <div>Jan</div>
        <div><br>
        </div>
        <div><br>
        </div>
        <div><dd
style="box-sizing:border-box;line-height:1.42857;margin-left:130px;word-break:break-word;color:rgb(51,51,51);font-family:'Source
            Sans Pro','Helvetica
            Neue',Helvetica,Arial,sans-serif;font-size:14px"><br>
          </dd>
          <dd
style="box-sizing:border-box;line-height:1.42857;margin-left:130px;word-break:break-word;color:rgb(51,51,51);font-family:'Source
            Sans Pro','Helvetica
            Neue',Helvetica,Arial,sans-serif;font-size:14px"><br>
          </dd>
        </div>
        <br>
        <fieldset class="mimeAttachmentHeader"></fieldset>
        <br>
        <pre wrap="">_______________________________________________
midPoint mailing list
<a class="moz-txt-link-abbreviated" href="mailto:midPoint@lists.evolveum.com" moz-do-not-send="true">midPoint@lists.evolveum.com</a>
<a class="moz-txt-link-freetext" href="http://lists.evolveum.com/mailman/listinfo/midpoint" moz-do-not-send="true">http://lists.evolveum.com/mailman/listinfo/midpoint</a>
</pre>
      </blockquote>
      <br>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
midPoint mailing list
<a class="moz-txt-link-abbreviated" href="mailto:midPoint@lists.evolveum.com">midPoint@lists.evolveum.com</a>
<a class="moz-txt-link-freetext" href="http://lists.evolveum.com/mailman/listinfo/midpoint">http://lists.evolveum.com/mailman/listinfo/midpoint</a>
</pre>
    </blockquote>
    <br>
  </body>
</html>