Flujo de trabajo activado en el escucha de eventos de replicación bucleándose en AEM.
Tengo un flujo de trabajo en AEM 6.5 que se activa desde código java en un listener de eventos de replicación, pero el problema es que mi flujo de trabajo tiene un paso de proceso que activa la página después de la revisión del paso del participante. Esta activación vuelve a llamar a mi flujo de trabajo ya que es un evento de replicación. ¿Cómo puedo evitar esto? ¿Existe un enfoque mejor o alguna solución alternativa?
davy.ai
Solución Posible
Para evitar que el flujo de trabajo se active nuevamente durante el proceso de activación, puedes agregar una propiedad personalizada al nodo de página que indique si el flujo de trabajo ya se ha ejecutado para esa página.
En el código Java que activa el flujo de trabajo, puedes verificar esta bandera antes de iniciar el flujo de trabajo. Si la bandera está configurada en verdadero, significa que el flujo de trabajo ya se ha ejecutado para esa página y puedes omitirlo.
Aquí están los pasos para implementar esta solución:
Puedes agregar esta propiedad manualmente a través de la consola de AEM o programáticamente utilizando la API de JCR. Aquí tienes un ejemplo de código Java para agregar la propiedad:
Aquí tienes un ejemplo de código Java para verificar la propiedad:
Aquí tienes un ejemplo de script para establecer la propiedad:
Con esta solución, el flujo de trabajo se ejecutará solo una vez para cada página, incluso si la página se activa varias veces.