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
Post a Comment