<div dir="ltr">Hi Pavol,<div><br></div><div>There is no hurry, we already have work around for that so its fine if it takes some time.</div><div><br></div><div><span style="font-size:12.8000001907349px"> <font color="#999999">when you modify a role R1 by e.g. adding assignment of R2, modifying assignment of R3 and deleting assignment of R4 (all with regards to R1), do you want to create</font></span><font color="#999999"><br style="font-size:12.8000001907349px"><span style="font-size:12.8000001907349px">one approval request? Or three (one for R2, one for R3, one for R4)? And to whom you want to direct these requests? To approvers of R1, or to approvers of R2/R3/R4?</span></font><br></div><div><br></div><div>for above scenario, I have requirement of three approvals going to R1,R2 and R3.</div><div><br></div><div>And All The Very Best for Midpoint release....   </div><div><br></div><div><br></div><div>Regards,</div><div>Anand Kothekar</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Mar 30, 2015 at 2:44 PM, Pavol Mederly <span dir="ltr"><<a href="mailto:mederly@evolveum.com" target="_blank">mederly@evolveum.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
  
    
  
  <div bgcolor="#FFFFFF" text="#000000">
    <div>Hello Anand,<br>
      <br>
      it is better <i>not</i> to write additional change processors (at
      least in the current state of the workflow module). The error
      you've encountered is related to this fact:<br>
      <br>
      <tt>No qualifying bean of type
        [com.evolveum.midpoint.wf.impl.processors.primary.PrimaryChangeProcessor]
        is defined: </tt><tt><br>
      </tt><tt>expected single matching bean but found 2:
        primaryRoleChangeProcessor,primaryUserChangeProcessor</tt><tt><br>
      </tt><br>
      (It's basically saying that I haven't prepared the module for
      multiple implementations of PrimaryChangeProcessor type.)<br>
      <br>
      Recently I have removed primaryUserChangeProcessor altogether and
      replaced it with general primaryChangeProcessor. So, definitely,
      there will be just one PrimaryChangeProcessor implementation,
      common for all types of focus objects (users, roles, orgs,
      resources, etc). So, please use this one to write your aspects.<br>
      <br>
      Actually, I'm in the middle of refactoring and cleaning up these
      parts of workflow code. I plan to finish it today (although it
      might not be in the cleanest form that is possible, because the
      3.1.1 release is approaching quickly). So if you could wait a day
      or two, I could provide you with a slightly better foundation for
      you to start on.<br>
      <br>
      BTW, when you modify a role R1 by e.g. adding assignment of R2,
      modifying assignment of R3 and deleting assignment of R4 (all with
      regards to R1), do you want to create<br>
      one approval request? Or three (one for R2, one for R3, one for
      R4)? And to whom you want to direct these requests? To approvers
      of R1, or to approvers of R2/R3/R4?<br>
      <br>
      Best regards,<br>
      Pavol<div><div class="h5"><br>
      <br>
      <br>
      On 30. 3. 2015 7:00, Anand Kothekar wrote:<br>
    </div></div></div><div><div class="h5">
    <blockquote type="cite">
      <div dir="ltr">Hi Pavol,
        <div><br>
        </div>
        <div><span style="font-size:12.8000001907349px">Actually I have
            written this change processor (</span><span style="font-size:12.8000001907349px">primaryRoleChangeProcessor</span><span style="font-size:12.8000001907349px">) and Aspect
            (RoleAssignmentChangeAspect) .</span></div>
        <div><span style="font-size:12.8000001907349px">you are correct
            that I want approvals on role assignment
            (add/modify/delete).</span></div>
        <div><span style="font-size:12.8000001907349px"><br>
          </span></div>
        <div><span style="font-size:12.8000001907349px">The problem I am
            facing is, When I define my custom change processor in
            config.xml file and try to start the server, It is not
            starting up and throwing error.</span></div>
        <div><span style="font-size:12.8000001907349px"><br>
          </span></div>
        <div><span style="font-size:12.8000001907349px">Please find the
            attached detailed error logs.</span></div>
        <div><br>
        </div>
        <div><span style="font-size:12.8000001907349px"><br>
          </span></div>
        <div><span style="font-size:12.8000001907349px"> </span></div>
        <div><span style="font-size:12.8000001907349px"><br>
          </span></div>
        <div><span style="font-size:12.8000001907349px">Thanks,</span></div>
        <div><span style="font-size:12.8000001907349px">Anand </span></div>
      </div>
      <div class="gmail_extra"><br>
        <div class="gmail_quote">On Fri, Mar 27, 2015 at 8:16 PM, Pavol
          Mederly <span dir="ltr"><<a href="mailto:pavol.mederly@gmail.com" target="_blank">pavol.mederly@gmail.com</a>></span>
          wrote:<br>
          <blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
            <div bgcolor="#FFFFFF" text="#000000">
              <div>Hello Anand,<br>
                <br>
                actually, there is no primaryRoleChangeProcessor yet.<br>
                <br>
                I'm working on workflows just now; what I'm trying to
                achieve for 3.1.1 is described here:<br>
                <a href="https://wiki.evolveum.com/display/midPoint/Workflow+configuration" target="_blank">https://wiki.evolveum.com/display/midPoint/Workflow+configuration</a><br>
                <br>
                However, it is not finished yet.<br>
                <br>
                By the way, what do you want to achieve? Do you want to
                approve creation/modification of assignments and
                inducements for a RoleType?<br>
                <br>
                Best regards,<br>
                Pavol
                <div>
                  <div><br>
                    <br>
                    <br>
                    On 27. 3. 2015 15:34, Anand Kothekar wrote:<br>
                  </div>
                </div>
              </div>
              <blockquote type="cite">
                <div>
                  <div>
                    <div dir="ltr">Hi,
                      <div><br>
                      </div>
                      <div>   I was playing around with change processor
                        and I am facing an issue when I try to provide
                        two change processors in config.xml</div>
                      <div><br>
                      </div>
                      <div>                  <workflow></div>
                      <div><span style="white-space:pre-wrap"> </span><changeProcessors></div>
                      <div><span style="white-space:pre-wrap"> </span><primaryUserChangeProcessor><span style="white-space:pre-wrap"> </span></div>
                      <div><span style="white-space:pre-wrap"> </span><aspect>addRoleAssignmentAspect</aspect></div>
                      <div><span style="white-space:pre-wrap"> </span><aspect>addAccountAssignmentAspect</aspect></div>
                      <div><span style="white-space:pre-wrap"> </span></primaryUserChangeProcessor><span style="white-space:pre-wrap"> </span></div>
                      <div><span style="white-space:pre-wrap"> </span></div>
                      <div>                               <b>
                          <primaryRoleChangeProcessor></b></div>
                      <div><b><span style="white-space:pre-wrap"> </span><aspect>roleAssignmentChangeAspect</aspect></b></div>
                      <div><b><span style="white-space:pre-wrap"> </span></primaryRoleChangeProcessor>

                            </b>                               </div>
                      <div><span style="white-space:pre-wrap"> </span></div>
                      <div><span style="white-space:pre-wrap"> </span></changeProcessors></div>
                      <div><span style="white-space:pre-wrap"> </span></workflow> </div>
                      <div><br>
                      </div>
                      <div><br>
                      </div>
                      <div>   I observed that whenever I try to provide
                        more than one change processor it throws an
                        error</div>
                      <div><br>
                      </div>
                      <div><b> ERROR
                          (com.evolveum.midpoint.web.component.progress.ProgressReporter):
                          Error executing changes, reason: Subresult
                          com.evolveum.midpoint.wf.impl.WfHook.invoke of
                          operation
                          com.evolveum.midpoint.model.api.ModelService.executeChanges
                          is still UNKNOWN during cleanup; during
                          handling of exception
                          com.evolveum.midpoint.util.exception.SystemException:
                          Change processor primaryRoleChangeProcessor
                          could not be found. (class
                          java.lang.IllegalStateException)</b></div>
                      <div><b><br>
                        </b></div>
                      <div><br>
                      </div>
                      <div>Actually it is only able to read one
                        ChangeProcessor at a time.</div>
                      <div><br>
                      </div>
                      <div>Could you please provide me some pointers on
                        this.</div>
                      <div><br>
                      </div>
                      <div><br>
                      </div>
                      <div><br>
                      </div>
                      <div>Regards,</div>
                      <div>Anand Kothekar</div>
                    </div>
                    <br>
                    <fieldset></fieldset>
                    <br>
                  </div>
                </div>
                <pre>_______________________________________________
midPoint mailing list
<a href="mailto:midPoint@lists.evolveum.com" target="_blank">midPoint@lists.evolveum.com</a>
<a href="http://lists.evolveum.com/mailman/listinfo/midpoint" target="_blank">http://lists.evolveum.com/mailman/listinfo/midpoint</a>
</pre>
              </blockquote>
              <br>
            </div>
            <br>
            _______________________________________________<br>
            midPoint mailing list<br>
            <a href="mailto:midPoint@lists.evolveum.com" target="_blank">midPoint@lists.evolveum.com</a><br>
            <a href="http://lists.evolveum.com/mailman/listinfo/midpoint" target="_blank">http://lists.evolveum.com/mailman/listinfo/midpoint</a><br>
            <br>
          </blockquote>
        </div>
        <br>
      </div>
      <br>
      <fieldset></fieldset>
      <br>
      <pre>_______________________________________________
midPoint mailing list
<a href="mailto:midPoint@lists.evolveum.com" target="_blank">midPoint@lists.evolveum.com</a>
<a href="http://lists.evolveum.com/mailman/listinfo/midpoint" target="_blank">http://lists.evolveum.com/mailman/listinfo/midpoint</a>
</pre>
    </blockquote>
    <br>
  </div></div></div>

<br>_______________________________________________<br>
midPoint mailing list<br>
<a href="mailto:midPoint@lists.evolveum.com">midPoint@lists.evolveum.com</a><br>
<a href="http://lists.evolveum.com/mailman/listinfo/midpoint" target="_blank">http://lists.evolveum.com/mailman/listinfo/midpoint</a><br>
<br></blockquote></div><br></div>