Expand my Community achievements bar.

Don’t miss the AEM Skill Exchange in SF on Nov 14—hear from industry leaders, learn best practices, and enhance your AEM strategy with practical tips.
SOLVED

How to assign a workflow to usergroup in AEM 6.3 using osgi R6 annotations?

Avatar

Community Advisor

how to assign a workflow to usergroup in AEM 6.3 using osgi R6 annotations?

I want to create workflow for "dynamic participant step". can anyone please explain how to use "chooser.label" and "service.description" in OSGI R6 annotation.

1 Accepted Solution

Avatar

Correct answer by
Employee

Try the below code. Make sure you have the R6 annotations dependencies in the pom.

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.metadata.MetaDataMap;

import org.osgi.service.component.annotations.Component;

@Component(service = ParticipantStepChooser.class, property = {"chooser.label = A Test Particpant Chooser step"})

public class DynamicParticipantStepChooser implements ParticipantStepChooser {

   @Override
   public String getParticipant(WorkItem workItem, WorkflowSession workflowSession, MetaDataMap metaDataMap) throws WorkflowException {

   // code
   return "administrators";

  }

}

View solution in original post

2 Replies

Avatar

Level 9

Try like this

@Component(service=Servlet.class,     

     property={ Constants.SERVICE_DESCRIPTION + "=Simple Demo Servlet", 

                 "sling.servlet.methods=" + HttpConstants.METHOD_GET,

                  "sling.servlet.resourceTypes="+ "com.poc.osgiannotation/components/structure/page", 

                 "sling.servlet.paths="+ "/bin/servlet",

                   "sling.servlet.extensions=" + "txt"

          })

Avatar

Correct answer by
Employee

Try the below code. Make sure you have the R6 annotations dependencies in the pom.

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.metadata.MetaDataMap;

import org.osgi.service.component.annotations.Component;

@Component(service = ParticipantStepChooser.class, property = {"chooser.label = A Test Particpant Chooser step"})

public class DynamicParticipantStepChooser implements ParticipantStepChooser {

   @Override
   public String getParticipant(WorkItem workItem, WorkflowSession workflowSession, MetaDataMap metaDataMap) throws WorkflowException {

   // code
   return "administrators";

  }

}