[Thread Edited By Adobe]
/*Don’t forget to meet and greet your fellow peers virtually by telling them about yourself here.
Go ahead and to it now: https://adobe.ly/3eDnB4v */
I have a question regarding multivalued property of type granite/ui/components/foundation/form/multifield in AEM.
My understanding is that it will always be stored in AEM with String Multi Array type for a given node's property, no matter if user provides 1 or greater than 1 property values.
But I have observed that some values are getting stored with Single String data type if I provide one value And stored as String multi value type in crxde, if I enter more than 1 values.
Why AEM does not store all values in unique way? i.e. By setting data type as; String multi value, if it's sling:resourceType is defined as multifield.
Is it a defect?
Let me check this with internal team.
I Don't know whether it is a defect or implementation but have observed the same.
Thanks. Please let me know. I can raise a ticket then.
I would request you to please share your observation with daycare till i get response from internal team.
For xtype like multifield, if you are saving only 1 value in property, it will get saved as String. This behavior is there from the beginning itself, (I have started from 5.4 )
You need to set the typeHint in the dialog
This will save the value as a String regardless of 1 or multiple values.
Thanks. Is there any property key to define directly at node level in crxde to set it as always String and overriding default current behavior?
I tried typeHint as property key but that did not work.
Delete the property that is currently just a "String" and then try again (this my answer was for classic UI). For Touch UI, use this:
<myFieldString jcr:primaryType="nt:unstructured" sling:resourceType="granite/ui/components/foundation/form/hidden" name="./myField@TypeHint" value="String"/>
I did not get you. I need to show this as one of the metadata for asset.
This is my current property configuration: