<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">Hello Alexander,<br>
      <br>
      I've enhanced our sample to cover also this case. You can find it
      in today's commit: <a
href="https://github.com/Evolveum/midpoint/commit/4ad1df9eb787ebee0f1ba4cf5920d29ac31797bb">https://github.com/Evolveum/midpoint/commit/4ad1df9eb787ebee0f1ba4cf5920d29ac31797bb</a><br>
      <br>
      The code looks like this:<br>
      <br>
      private static void changeUserGivenName(ModelPortType modelPort,
      String oid, String newValue) throws FaultMessage {<br>
          Document doc = ModelClientUtil.getDocumnent();<br>
          ObjectModificationType userDelta = new
      ObjectModificationType();<br>
          userDelta.setOid(oid);<br>
          ItemDeltaType itemDelta = new ItemDeltaType();<br>
          itemDelta.setModificationType(ModificationTypeType.REPLACE);<br>
          ItemDeltaType.Value itemValue = new ItemDeltaType.Value();<br>
      <b>   
        itemValue.getAny().add(ModelClientUtil.toJaxbElement(ModelClientUtil.COMMON_GIVEN_NAME,
        ModelClientUtil.createPolyStringType(newValue, doc)));</b><b><br>
      </b>    itemDelta.setValue(itemValue);<br>
          userDelta.getModification().add(itemDelta);<br>
         
      modelPort.modifyObject(ModelClientUtil.getTypeUri(UserType.class),
      userDelta);<br>
      }<br>
      <br>
      Instead of setting <font color="#000099">"path = givenName",
        value to replace = "<value>abc</value>"</font> it is
      necessary to set the parameters as following:<br>
      <br>
      <font color="#000099">    path = (nothing)<br>
            value to replace = <givenName>abc</givenName><br>
      </font><br>
      (Note that I've also added appropriate QName constant into
      ModelClientUtil, although you can of course provide such a value
      directly in your code.)<br>
      <br>
      Hope this helps,<br>
      Pavol<br>
      <br>
      On 27. 3. 2014 18:29, Alexander Grzesik wrote:<br>
    </div>
    <blockquote
      cite="mid:6d48e1e7-815f-48f3-be12-760eaa715de1@medisite.de"
      type="cite">
      <meta http-equiv="Content-Type" content="text/html;
        charset=ISO-8859-1">
      <meta name="Generator" content="Microsoft Word 15 (filtered
        medium)">
      <style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Consolas;
        panose-1:2 11 6 9 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";
        mso-fareast-language:EN-US;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
span.E-MailFormatvorlage17
        {mso-style-type:personal-compose;
        font-family:"Calibri","sans-serif";
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        mso-fareast-language:EN-US;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:70.85pt 70.85pt 2.0cm 70.85pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
      <div class="WordSection1">
        <p class="MsoNormal">Hi,<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal"><span lang="EN-US">I am trying to use the
            ModelClient to use Midpoint as IDM Backend for an external
            application.<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">Based on the ModelSample
            I was able to create, delete, modify roles and change
            password of a user.<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">What I did not found out
            is how to modify a simple attribute of a User (e.g.
            givenName).<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">My code looks like this:<o:p></o:p></span></p>
        <p class="MsoNormal" style="text-autospace:none"><span
            style="font-size:10.0pt;font-family:Consolas;color:black"
            lang="EN-US">Document doc = ModelClientUtil.<i>getDocumnent</i>();</span><span
            style="font-size:10.0pt;font-family:Consolas" lang="EN-US"><o:p></o:p></span></p>
        <p class="MsoNormal" style="text-autospace:none"><span
            style="font-size:10.0pt;font-family:Consolas" lang="EN-US"><o:p> </o:p></span></p>
        <p class="MsoNormal" style="text-autospace:none"><span
            style="font-size:10.0pt;font-family:Consolas;color:black"
            lang="EN-US">ObjectModificationType userDelta = </span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055" lang="EN-US">new</span></b><span
            style="font-size:10.0pt;font-family:Consolas;color:black"
            lang="EN-US"> ObjectModificationType();</span><span
            style="font-size:10.0pt;font-family:Consolas" lang="EN-US"><o:p></o:p></span></p>
        <p class="MsoNormal"><span
            style="font-size:10.0pt;font-family:Consolas;color:black"
            lang="EN-US">userDelta.setOid(oid);<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">ItemDeltaType delta =
            new ItemDeltaType();<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">delta.setModificationType(ModificationTypeType.REPLACE);<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">delta.setPath(ModelClientUtil.createPathElement("givenName",
            doc));<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">ItemDeltaType.Value
            value = new ItemDeltaType.Value();<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">value.getAny().add(<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">       
            ModelClientUtil.toJaxbElement(ModelClientUtil.COMMON_VALUE,<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">              
            ModelClientUtil.createPolyStringType((String) newValue,
            doc)));<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">delta.setValue(value);<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">userDelta.getModification().add(delta);<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">modelPort.modifyObject(ModelClientUtil.getTypeUri(UserType.class),
            userDelta);<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">I get the following
            error:<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">com.evolveum.midpoint.xml.ns._public.common.fault_1_wsdl.FaultMessage:
            Looking for definition of class class
            com.evolveum.midpoint.prism.PrismContainerDefinition but
            found PPD:{.../common/common-2a}givenName
            {<a class="moz-txt-link-freetext" href="http://prism.evolveum.com/xml/ns/public/types-2">http://prism.evolveum.com/xml/ns/public/types-2</a>}PolyStringType[0,1],RCU<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">Could you give me an
            example how to modify properties of a User via the
            ModelClient api?<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">Thanks<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US">Alexander<o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
        <p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
      </div>
      <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>