Highlighted

AEM 6.3 Issue with composite multifield in asset metadataschema

d33t

11-11-2019

I'm trying to migrate the classic ui dialog of an asset to it's touch ui equivalent. I've already configured the metadata schema via /conf/global/settings/dam/adminui-extension/metadataschema/default for the most fields, but I've issues when I configure a composite multifield. We are using a composite multifield in order to translate the asset properties. I used already non composite multifield with a pathbrowser for example and this is working just fine.

The issue here is that the fields are sent to the wrong location.

Actual state:

./dc:languagecode=[de,en]

./dc:title=[titel (de),title (en)]

Expected state:

./jcr:content/languages/item0/./dc:languagecode=de

./jcr:content/languages/item0/./dc:title=titel (de)

./jcr:content/languages/item1/./dc:languagecode=en

./jcr:content/languages/item1/./dc:title=title (en)

What I've tried is the following configuration.

<tab_languageSupport jcr:primaryType="nt:unstructured"

    jcr:title="Language support"

    sling:resourceType="granite/ui/components/coral/foundation/container"

    listOrder="4">

    <granite:data jcr:primaryType="nt:unstructured" tabid="tab-languageSupport"/>

    <items jcr:primaryType="nt:unstructured">

        <col1 jcr:primaryType="nt:unstructured"

            sling:resourceType="granite/ui/components/coral/foundation/container"

            listOrder="0">

            <items jcr:primaryType="nt:unstructured">

                    <languageVersion jcr:primaryType="nt:unstructured"

                        sling:resourceType="granite/ui/components/coral/foundation/form/multifield"

                        composite="{Boolean}true">

                        <field jcr:primaryType="nt:unstructured"

                            sling:resourceType="granite/ui/components/coral/foundation/form/fieldset"

                            jcr:title="Language version"

                            name="./jcr:content/languages">

                            <items jcr:primaryType="nt:unstructured">

                                <languagecode jcr:primaryType="nt:unstructured"

                                    sling:resourceType="granite/ui/components/coral/foundation/form/autocomplete"

                                    fieldLabel="languagedialog_language_code"

                                    name="./dc:languagecode"

                                    forceSelection="{Boolean}true">

                                    <datasource jcr:primaryType="nt:unstructured"

                                        sling:resourceType="cq/gui/components/common/datasources/languages" />

                                    <values jcr:primaryType="nt:unstructured"

                                        sling:resourceType="granite/ui/components/coral/foundation/form/autocomplete/tags" />

                                    <options jcr:primaryType="nt:unstructured"

                                        sling:resourceType="granite/ui/components/coral/foundation/form/autocomplete/list" />

                                </languagecode>

                                <title jcr:primaryType="nt:unstructured"

                                    sling:resourceType="granite/ui/components/coral/foundation/form/textfield"

                                    fieldLabel="Title"

                                    name="./dc:title"/>

                                ...

                            </items>

                        </field>

                    </languageVersion>

            </items>

        </col1>

    </items>

</tab_languageSupport>

Is this a bug with AEM 6.3 only? Is is fixed with some CFP? Is there some workaround?

AEM Version: 6.3.2.1