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

Launcher gets triggered by another workflow

Avatar

Level 2

I have a launcher that is triggered on a cq:PageContent node on 'Node modified' and I have set a condition to prevent it from firing if a property exists. However, the OOTB Publish workflow is triggering this launcher.

I've used the Exclude List to ignore any changes triggered by another workflow process by adding this:
event-user-data:changedByWorkflowProcess

That didn't help. The user data "changedByWorkflowProcess" would already be set by this OOTB publish workflow I'd imagine

I've also tried adding the following to the exclude list, with no luck:

cq:lastReplicated,cq:lastReplicatedBy,cq:lastReplicationAction,jcr:baseVersion,jcr:versionHistory.

Any suggestions?

CC: @smacdonald2008 ; @Jörg_Hoh (I've read your post on https://cqdump.wordpress.com/2020/01/03/prevent-workflow-launchers-from-starting-a-workflow/)

1 Accepted Solution

Avatar

Correct answer by
Level 2

Hi guys, my globbing in the Path field in Launcher was incorrect. I was using /content instead of /content(/.*/)jcr:content. I didn't think I needed to have jcr:content in the path as my nodeType was already specified as cq:PageContent. Once I narrowed this to jcr:content and used the excludeList, it worked.

Screen Shot 2020-10-20 at 11.26.20 pm.pngScreen Shot 2020-10-21 at 1.29.37 pm.png

View solution in original post

5 Replies

Avatar

Community Advisor

Hi @AnjaliBiddanda ,

 

Hope this kb article helpful to you.

  1. https://helpx.adobe.com/experience-manager/kb/Too-many-workflows-triggered-by-workflow-launcher.html

And here it mentioned like - Implement a custom JCR event listener instead.

See for example https://helpx.adobe.com/experience-manager/using/maven_arch12_event_listener.html

 

Regards,

Santosh

Avatar

Level 2
Thanks @ Santhosh_kumark. I don't want to implement a JCR event listener or a pre-processor if this can be achieved using the exclude list feature.

Avatar

Employee

Hi @AnjaliBiddanda,

You can add the Exclude List in custom workflow launcher configs that specifies any JCR events to exclude (i.e. ignore) when determining whether a workflow should be triggered.

 

Try checking the use case after adding the following in exclude list:

 

jcr:lastModified,dc:modified,dc:format,jcr:lastModifiedBy,imageMap,event-user-data:changedByWorkflowProcess


This launcher property is a comma separated list of items:

  • property-name ignore any jcr event which triggered on the specified property name.
  • event-user-data:<someValue>  ignores any event that contains the <someValue> user-data set through the ObservationManager API.

Thanks!!

Avatar

Level 2

Thanks Vanegi. I tried that. I expect that to work since it has event-user-data:changedByWorkflowProcess in the exclude list, but it doesn't. What am I missing? Do I need to set this changedByWorkflowProcess property somewhere?

Avatar

Correct answer by
Level 2

Hi guys, my globbing in the Path field in Launcher was incorrect. I was using /content instead of /content(/.*/)jcr:content. I didn't think I needed to have jcr:content in the path as my nodeType was already specified as cq:PageContent. Once I narrowed this to jcr:content and used the excludeList, it worked.

Screen Shot 2020-10-20 at 11.26.20 pm.pngScreen Shot 2020-10-21 at 1.29.37 pm.png