Issue in implementing Dynamic participant chooser process Step


i facing issue in implementing participant chooser process step.

 

 

i want create dynamic participant chooser process step, have implemented 'participantstepchooser' class , overwrote 'getparticipant' method. process did not appear in dynamic participant chooser dropdown in cq5.6 environment.

 

i deployed same code in cq5.5 , process appeared in dynamic participant chooser dropdown.

 

 

 

this sample code have used:

 

@component(immediate = true, metatype = true, label = "dmp config service123")

@service

@properties({

        @property(name = constants.service_description, value = "a sample implementation of dynamic participant chooser.", propertyprivate=true),

        @property(name = constants.service_vendor, value = "adobe", propertyprivate=true),

        @property(name = participantstepchooser.service_property_label, value = "******** hello ********", propertyprivate=true),

        @property(name = "immediate" , value = "true", propertyprivate=true)

         })

public class mydynamicparticipant implements participantstepchooser {

 

    private static final string type_jcr_path = "jcr_path";

   

    @activate

void activate(componentcontext context) {

  loggerutil.infolog(this.getclass(), " ");

}

 

    public string getparticipant(workitem workitem, workflowsession workflowsession, metadatamap args) throws workflowexception {

  loggerutil.infolog(this.getclass(), "inside getparticipant method{} ");

        workflowdata workflowdata = workitem.getworkflowdata();

        if (workflowdata.getpayloadtype().equals(type_jcr_path)) {

string path = workflowdata.getpayload().tostring();

string pathfromargument = args.get("process_args", string.class);

if (pathfromargument != null && path.startswith(pathfromargument)) {

return "admin";

}

        }

        return "administrators";

    }

   

  

}

make sure change imports in 5.6 use granite api. please change [1] [2].

 

 

[1]

import com.day.cq.workflow.workflowexception;

import com.day.cq.workflow.workflowsession;

import com.day.cq.workflow.exec.participantstepchooser;

import com.day.cq.workflow.exec.workitem;

import com.day.cq.workflow.exec.workflowdata;

import com.day.cq.workflow.metadata.metadatamap;

 

[2]

import com.adobe.granite.workflow.workflowexception;

import com.adobe.granite.workflow.workflowsession;

import com.adobe.granite.workflow.exec.participantstepchooser;

import com.adobe.granite.workflow.exec.workitem;

import com.adobe.granite.workflow.metadata.metadatamap;



More discussions in Archived Spaces


adobe

Comments

Popular posts from this blog

How to set the order of FAQs instead of alphabetical

Thread: Get UK Keyboard working

how do I change the e-mail address for my merchant account