Aem 在mywebsite组件中重用CQ5表单不会显示表单部分的末尾
我正在尝试将表单重用到我的项目组件中。 我已将整个表单文件夹从“/libs/foundation/components/form”复制粘贴到我的项目“/apps/mywebsite/components/form”。 但当我试图使用parsys网站上的表单时,from只显示from的开始。 当我试图在同一页PARSISS中从基础中使用表单时,它显示了表单的开始和结束。 观察:Aem 在mywebsite组件中重用CQ5表单不会显示表单部分的末尾,aem,Aem,我正在尝试将表单重用到我的项目组件中。 我已将整个表单文件夹从“/libs/foundation/components/form”复制粘贴到我的项目“/apps/mywebsite/components/form”。 但当我试图使用parsys网站上的表单时,from只显示from的开始。 当我试图在同一页PARSISS中从基础中使用表单时,它显示了表单的开始和结束。 观察: 从内容来看,当我在页面内容中使用基础窗体时,我可以看到起始节点和结束节点。其中,当我单独使用mywebsite表单开始节
从内容来看,当我在页面内容中使用基础窗体时,我可以看到起始节点和结束节点。其中,当我单独使用mywebsite表单开始节点时,创建表单结束。表单结束由FormParagraphPostProcessor类的fixStructure()方法添加/删除。此后处理器侦听表单开始和表单结束段落的创建和删除,并相应地创建/删除其他段落
if ( ResourceUtil.isA(res, FormsConstants.RT_FORM_BEGIN)
|| ResourceUtil.isA(res, FormsConstants.RT_FORM_END)) {
if ( FormsHelper.checkFormStructure(res) != null ) {
logger.debug("Fixed forms structure at {}", contentResource.getPath());
}
}else {
fixStructure(res);
}
该类依赖于FormConstants.java,其中表单开始(RT_form_BEGIN)和表单结束(RT_form_end)分别定义为“基础/组件/表单/开始”和“基础/组件/表单/结束”。因此,后处理器不会处理项目中存在的表单开始/结束
< >为了使自定义表单组件工作,您可以考虑下列选项之一:
if ( ResourceUtil.isA(res, FormsConstants.RT_FORM_BEGIN)
|| ResourceUtil.isA(res, FormsConstants.RT_FORM_END)) {
if ( FormsHelper.checkFormStructure(res) != null ) {
logger.debug("Fixed forms structure at {}", contentResource.getPath());
}
}else {
fixStructure(res);
}