I' trying to use a custom object as input parameter for one of my workflows. This object array will be used later as input for one very simple scriptable task:
my_input_objects.forEach(
function(my_element) {
System.debug(JSON.stringify(my_element));
}
);
As soon as I hit the run button I'm getting this error:
I also noticed a bug on the auto-generated input form element which can be seen in the screenshot.
Relevant part of the logs:
2019-08-22 10:25:37.260+0000 [http-nio-127.0.0.1-8280-exec-9] WARN {} [WorkflowRuntimeServiceImpl] Unable to insert a WorkflowToken / WorkflowTokenContent
java.lang.RuntimeException: cannot convert value of my_input_objects to decrypt it
Caused by: ch.dunes.model.type.ConvertorException: Array value has invalid format
at ch.dunes.model.workflow.WorkflowTokenHelper.processArraySensitiveValue(WorkflowTokenHelper.java:248)
at ch.dunes.model.workflow.WorkflowTokenHelper.processSensitiveValue(WorkflowTokenHelper.java:153)
at ch.dunes.model.workflow.WorkflowTokenHelper.encryptSensitiveValues(WorkflowTokenHelper.java:112)
at ch.dunes.model.workflow.XmlWorkflowTokenAttributeWriter.appendAttribute(XmlWorkflowTokenAttributeWriter.java:146)
... 158 more
Caused by: java.lang.NullPointerException
at ch.dunes.workflow.engine.mbean.WorkflowEngine.executeNewWorkflow(WorkflowEngine.java:601)
... 129 more
The full log and the rest of the screenshots are available in the .zip file attached to this thread.
vRealize Orchestrator version: 7.6.0
Any suggestion/feedback is really appreciated since I'm evaluating if I can use the Orchestrator or else if I have to research for different solutions.
Thanks in advance.
Hello,
I'm having the same issue. Array of Composite types can not be passed as Input in the HTML 5 client.
I does not matter if the consuming workflow was created using the java or html client.
Kind regards,
Martin
Also confirming the error is occurring for me in vRO 7.6; I have not applied any HF packs to this vRA instance though, so I'm not sure if it's been fixed in a later release.
The issue does not occur if you use a CompositeType by itself, only if the input type is Array.
I can also confirm the issue does not occur in vRO 8.0 even for Array/CompositeType.
I just checked the cumulative updates for vRA 7.6 and vRO 7.6 and I couldn't see anything describing a fix for this issue.
Is there any reason you can't use the legacy Java client instead? It's not recommended to use the web client in 7.6 (or in 8.0, but we don't really get a choice).
This should already be fixed, please try upgrading to the latest 7.6 build available here - https://kb.vmware.com/s/article/70629
Nothing in those notes indicates that it's fixed.
Sorry for being afk for one month.
I can confirm that this is not resolved in the latest 7.6 build.
Soon I'll start working again in this project, in the meantime my team has upgraded the orchestrator instance and i will give additional feedback regarding the version 8 on this issue.
I didn't want to use the old java client because I read about its deprecation plus workflows developed via java client are not 100% compatible with the html 5 UI (for instance a lot of workflows of official plugin such as nsx plugin developed via java client are not working in the html 5 UI).
Thanks to everyone for your replies.
This fix was part of a commit including fixes for multiple issues related to this topic. In the notes here VMware Knowledge Base it is listed as "Variables of type Array/Object only show [object Object] and can not be expanded in vRealize Orchestrator 7.6.0 HTML5 client.".
Please make sure you do indeed have the latest build installed. I deployed a vRO from the ISO listed on this page and arrays of composite types seem to be working fine (screenshots attached).
I am using below mentioned composite type input variable in my vRO 7.6 to get details of multiple FIrewall Rules in one request . However when I use this workflow as XaaS from vRA ..array/string variable inside composite Type variable is not appear as array in vRA request form instead it appears as plain text box .
Any solution for this or is any bug here ? Response is highly appreciated
Composite Type input Variable :
input': name=listRules type=Array/CompositeType(ruleName:string,enabled:boolean,action:string,direction:string,packetType:string,logging:boolean,appliedToList:Array/string,isSourcesExcluded:boolean,sourcesList:Array/string,isDestinationsExcluded:boolean,destinationsList:Array/string,services:Array/string,serviceGroups:Array/string):