Workflow - Container step
Hi, has anyone passed data from Process to Container step in the workflow? I'm a bit struggling to achieve the same. Tried using the workItem object and adding to its MetaDataMap() but doesn't seem to work for me.
Process step:
public void execute (WorkItem workItem, WorkflowSession workflowSession, MetaDataMap metaDataMap)
throws WorkflowException {
try (ResourceResolver resolver = SystemResolverFactory.getSystemResolver(factory)) {
WorkflowData workflowData = workItem.getWorkflowData();
try {
workItem.getWorkflow().getMetaDataMap().put("custom_payload", "abc21324");
workItem.getMetaDataMap().put("custom_payload", "abc21324");
metaDataMap.put("test", "abc21324");
...
}
}
Container step:
public void execute(WorkItem workItem, WorkflowSession workflowSession, MetaDataMap metaDataMap)
throws WorkflowException {
try (ResourceResolver resolver = SystemResolverFactory.getSystemResolver(factory)) {
WorkflowData workflowData = workItem.getWorkflowData();
log.error(workItem.getMetaDataMap().get("custom_payload").toString());
log.error(workItem.getWorkflow().getMetaDataMap().get("custom_payload").toString());
log.error(metaDataMap.get("test");
)
...
}
}
And my model has been designed like this:
<?xml version="1.0" encoding="UTF-8"?>
<jcr:root xmlns:sling="http://sling.apache.org/jcr/sling/1.0" xmlns:cq="http://www.day.com/jcr/cq/1.0" xmlns:jcr="http://www.jcp.org/jcr/1.0" xmlns:mix="http://www.jcp.org/jcr/mix/1.0" xmlns:nt="http://www.jcp.org/jcr/nt/1.0"
jcr:primaryType="cq:Page">
<jcr:content
cq:designPath="/libs/settings/wcm/designs/default"
cq:template="/libs/cq/workflow/templates/model"
jcr:isCheckedOut="{Boolean}true"
jcr:mixinTypes="[mix:versionable]"
jcr:primaryType="cq:PageContent"
jcr:title=""
jcr:uuid="25bb8fcc-0a79-4e05-bfb0"
sling:resourceType="cq/workflow/components/pages/model"
>
<flow
jcr:primaryType="nt:unstructured"
sling:resourceType="foundation/components/parsys">
<process
jcr:description="testststts"
jcr:primaryType="nt:unstructured"
jcr:title="test test"
sling:resourceType="cq/workflow/components/model/process">
<metaData
jcr:primaryType="nt:unstructured"
PROCESS="com.project.test.abc.process"
PROCESS_AUTO_ADVANCE="true"
timeoutMillis="3600000"/>
</process>
<container
jcr:created="{Date}2023-06-19T17:52:46.755+02:00"
jcr:createdBy="admin"
jcr:description="test description."
jcr:title="test title"
sling:resourceType="cq/workflow/components/model/container">
<metaData
jcr:primaryType="nt:unstructured"
CONTAINER="/var/workflow/models/path-to-container"
timeoutMillis="3600000"/>
</container>
</flow>
</jcr:content>
</jcr:root>
can someone let me know what I'm missing here? Thanks!