Esta conversa foi bloqueada devido à inatividade. Crie uma nova publicação.
Nível 1
Nível 2
Faça login na Comunidade
Faça logon para exibir todas as medalhas
Esta conversa foi bloqueada devido à inatividade. Crie uma nova publicação.
Hello All
I have created a new workflow and have added a "DAM Unarchiver Process"(com.day.cq.dam.core.process.UnarchiverProcess) step in it. The workflow works fine and does its job. E.g. when I upload a zip file, it extracts the contents by creating a new folder. However, I am not able to set additional arguments which it supports.
I want to set removeOriginal=true and updateMode=OVERWRITE. When I set these arguments from process step, those don't get applied. I tried following syntaxes to set the arguments but it never works. Is this an issue in this step? Please help.
I have even tried to run this workflow programmatically and tried to set the arguments in respective map(PROCESS_ARGS) but even that does not work
Thanks
Ganesh
Solucionado! Ir para a Solução.
Os tópicos ajudam a categorizar o conteúdo da comunidade e aumentam sua capacidade de descobrir conteúdo relevante.
Hi @gkkhatal,
Process arguments are comma separated pairs, where each pair consists of name and value separated by double colon.
In this case, can you try adding removeOriginal::true,updateMode::OVERWRITE
What version of AEM ?
Can you check the logs and verify any relevant entries in the log ?
Visualizações
respostas
Total de curtidas
Visualizações
respostas
Total de curtidas
Visualizações
respostas
Total de curtidas
Visualizações
respostas
Total de curtidas
Visualizações
respostas
Total de curtidas
Hi @gkkhatal,
Process arguments are comma separated pairs, where each pair consists of name and value separated by double colon.
In this case, can you try adding removeOriginal::true,updateMode::OVERWRITE
Visualizações
respostas
Total de curtidas
Hi @gkkhatal,
By the statement enabled debug logging, you mean DEBUG log level on this class - com.day.cq.dam.core.process.UnarchiverProcess and it is still returning same default update mode?
Also, would like to do another cross check -> In your original post, you mentioned that you tried triggering workflow programatically by setting the map values.
That is via,
wfData.getMetaDataMap().put("updateMode", "..");
wfData.getMetaDataMap().put("removeOriginal", "..");
wfSession.startWorkflow(model, wfData);
Trigger the WF programatically again and observe the runtime instance (/var/workflow/model/instances) workflow data - Cross check if this is set here.
Visualizações
respostas
Total de curtidas
Hi @Vijayalakshmi_S,
I tried it. But the workflowMetadata will set the values at workflow level and not to the process step level. I tried it anyways and it shows correctly in /var/workflow/instances, but that does not work as expected and the workflow still takes default values.
I tried to log the process level arguments(Set via process arguments in WF model) and this is how it shows. Note there are 2 items and the arguments are shown against PROCESS_ARGS:
{PROCESS_ARGS=removeOriginal::true,updateMode::OVERWRITE, PROCESS=com.day.cq.dam.core.process.UnarchiverProcess}
Now, I am thinking if those are correct arguments. Do you know valid arguments list for UnarchiverProcess? I could not find valid documentation for it. I had looked into the decompiled UnarchiverProcess and picked these arguments list(removeOriginal & updateMode) but those does not seem to be working.
Visualizações
respostas
Total de curtidas
Hi @gkkhatal,
Nope. Workflow MetaDataMaps + WorkflowData MetaDataMaps can be used throughout the workflow. Recommended is to use WorkflowData's MetaDataMap.
Unarchiver process step uses com.day.cq.workflow.* family and not com.adobe.granite.workflow.*
In your code where you set the WorkflowData's MetaDataMap, can you use the one from com.day.cq.workflow.* family. If you are already using that, ignore this point.
Decompiled version seems to be straightforward, it just retrieves values from MetaDataMap(com.day.cq.workflow.metadata.MetaDataMap) and the key name you have used also seems to be correct.
I will try from my end in parallel.
Visualizações
respostas
Total de curtidas
Hi @gkkhatal,
Just realised that the args are not retrieved from PROCESS_ARGS for this process - UnarchiverProcess. Instead it is directly retrieved using the key from MetaDataMap, where below are the possible key names
removeOriginal
disableExtract
maxBytes
maxNumItems
maxNumItemsPerDir
saveThreshold
skipFileNamePatterns
updateMode
Visualizações
respostas
Total de curtidas
Hi @gkkhatal ,
After reproducing the issue in my local, was able to get to this.
We need to make use of the direct DAM Workflow Process named - Unarchiver and not the DAM Unarchiver Process selection from normal Process step.
Screenshot below for reference:
From CRXDE:
Visualizações
respostas
Total de curtidas
Hello @Vijayalakshmi_S,
This finally worked. Thanks a lot for your time in this. Appreciate it!
Just a curious question. Is there relevant documentation/info about it? Looks like I was heading a wrong direction as I was not able to find precise info. The previous approach was really extracting the zip archive so did not think of changing the appraoch, thinking there was issue in calling the arguments.
Thanks again!
Ganesh
Visualizações
respostas
Total de curtidas
Hi @gkkhatal,
No problem. There is no documentation related to this.
Was able to narrow down from this point
Visualizações
respostas
Total de curtidas
Visualizações
Curtida
respostas
Visualizações
Curtida
respostas
Visualizações
Curtida
respostas
Visualizações
Curtida
respostas