AEM / CQ5对话框多字段不保存输入

时间:2016-05-03 00:57:35

标签: java xml jsp cq5 aem

我正在构建一个允许用户添加多字段的组件。将多字段添加到对话框时,将向用户显示两个文本框。当用户向文本框添加信息时,点击“确定”即可。对话框关闭时,不会存储/保存任何信息。

有谁可以指出我出错的地方?

请参阅下面的对话框代码:

<?xml version="1.0" encoding="UTF-8"?>
<jcr:root xmlns:cq="http://www.day.com/jcr/cq/1.0" xmlns:jcr="http://www.jcp.org/jcr/1.0" xmlns:nt="http://www.jcp.org/jcr/nt/1.0"
    jcr:primaryType="cq:Dialog"
    xtype="dialog">
    <items
        jcr:primaryType="nt:unstructured"
        xtype="panel">
        <items jcr:primaryType="cq:WidgetCollection">
            <heading
                jcr:primaryType="nt:unstructured"
                allowBlank="true"
                disabled="false"
                fieldLabel="Heading (optional)"
                grow="false"
                hideLabel="false"
                name="./headingTitle"
                readOnly="false"
                selectOnFocus="false"
                validateOnBlur="true"
                xtype="textfield"/>
            <message
                jcr:primaryType="nt:unstructured"
                fieldLabel="Message (optional)"
                name="./message"
                validateOnBlur="true"
                xtype="textfield"/>
            <link-list
                jcr:primaryType="cq:Widget"
                fieldLabel="Tabs titles and binding"
                border="{Boolean}false"
                name="./link-list"
                width="1000"
                xtype="multifield">
                <fieldConfig
                    jcr:primaryType="cq:Widget"
                    path="/apps/group/components/nab-broker-tabs/dialog/items/items/link-list/fieldConfig/items.infinity.json"
                    xtype="cq.compositefield">
                        <items jcr:primaryType="cq:WidgetCollection">
                            <linkText
                                jcr:primaryType="cq:Widget"
                                fieldLabel="Titles"
                                name="linkText"
                                width="180"
                                xtype="textfield"/>
                            <linkBinding
                                jcr:primaryType="cq:Widget"
                                fieldLabel="binding ID"
                                name="linkBinding"
                                width="180"
                                xtype="textfield"/>
                        </items>
                </fieldConfig>
            </link-list>
        </items>
    </items>
</jcr:root>

2 个答案:

答案 0 :(得分:0)

由于要存储多个值,您应该使用自定义xtype来存储多字段值。 参考:http://helpx.adobe.com/experience-manager/using/creating-custom-xtype.html

答案 1 :(得分:0)

如果是复杂的多字段组件,我建议您使用ACS AEM Commons中的多字段面板

它会为你完成这项工作。