Adobe Experience Manager: en AEM 6.5 LTS SP2, el valor PROCESS de un paso del proceso de flujo de trabajo se guarda con comillas simples, lo que provoca que la implementación del proceso no se encuentre durante la ejecución
Descripción description
En el entorno AEM 6.5 LTS SP2, cuando se configura y guarda un paso de proceso en un modelo de flujo de trabajo, el nombre de clase de proceso almacenado en metaData/PROCESS se puede convertir en una cadena con comillas simples.
Como resultado, durante la ejecución del flujo de trabajo, AEM no puede resolverlo con el nombre de clase Java original y falla con un error como el siguiente:
01.01.2026 00:00:00.000 *ERROR* [ JobHandler: /var/workflow/instances/server0/2026-01-01/sample_workflow_1:/content/sample/path] com.adobe.granite.workflow.core.job.JobHandler Error executing workflow step
com.adobe.granite.workflow.WorkflowException: Process implementation not found: 'com.day.cq.dam.core.process.GateKeeperProcess'at com.adobe.granite.workflow.core.job.HandlerBase.executeProcess(HandlerBase.java:207) [ com.adobe.granite.workflow.core:2.0.240.CQ680-B0017] at com.adobe.granite.workflow.core.job.JobHandler.process(JobHandler.java:271) [ com.adobe.granite.workflow.core:2.0.240.CQ680-B0017] at org.apache.sling.event.impl.jobs.JobConsumerManager$JobConsumerWrapper.process(JobConsumerManager.java:502) [ org.apache.sling.event:4.2.24] at org.apache.sling.event.impl.jobs.queues.JobQueueImpl.startJob(JobQueueImpl.java:351) [ org.apache.sling.event:4.2.24] at org.apache.sling.event.impl.jobs.queues.JobQueueImpl.access$100(JobQueueImpl.java:60) [ org.apache.sling.event:4.2.24] at org.apache.sling.event.impl.jobs.queues.JobQueueImpl$1.run(JobQueueImpl.java:287) [ org.apache.sling.event:4.2.24] at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)at java.base/java.lang.Thread.run(Thread.java:834)
Entornos
AEM 6.5 LTS SP2
AEM 6.5.23.0 (después de aplicar cq-6.5.0-hotfix-GRANITE-61551-SP23-1.4.zip)
AEM 6.5.24.0
AEM 6.5.25.0
Resolución resolution
El nombre de la clase Proceso de flujo de trabajo se puede guardar entre comillas simples. Este comportamiento se produce como parte de una comprobación de seguridad.
En este caso, agregue el nombre de clase de proceso de flujo de trabajo de destino a la lista de permitidos en la Configuración de seguridad de expresión OSGi.
Pasos
Paso 1. Abra http://< host> :< puerto> /system/console/configMgr.
Paso 2. Abrir configuración de seguridad de expresión
Paso 3. Añada el nombre de clase de proceso de flujo de trabajo de destino a la lista de permitidos
Usar palabras clave permitidas para una sola clase
Usar motivos permitidos para varias clases
Paso 4. En el modelo de flujo de trabajo de destino, vuelva a elegir la clase de proceso de flujo de trabajo de destino en el paso de proceso de destino y guárdela
Paso 5. Sincronizar el modelo de flujo de trabajo
Ejemplo: Palabras clave permitidas
com.day.cq.dam.core.process.GateKeeperProcess
Ejemplo: Patrones permitidos
ˆcom\.day\.cq\.dam\.core\.process\..*$