diff --git a/source/java/org/alfresco/web/bean/wcm/EditFormWizard.java b/source/java/org/alfresco/web/bean/wcm/EditFormWizard.java index 8635c61d41..ae62bddab6 100644 --- a/source/java/org/alfresco/web/bean/wcm/EditFormWizard.java +++ b/source/java/org/alfresco/web/bean/wcm/EditFormWizard.java @@ -89,8 +89,26 @@ public class EditFormWizard this.setFormTitle(form.getTitle()); this.setFormDescription(form.getDescription()); this.setSchemaRootElementName(form.getSchemaRootElementName()); - final NodeRef schemaNodeRef = (NodeRef) + NodeRef schemaNodeRef = (NodeRef) this.nodeService.getProperty(formNodeRef, WCMAppModel.PROP_XML_SCHEMA); + if (schemaNodeRef == null) + { + LOGGER.debug(WCMAppModel.PROP_XML_SCHEMA + " not set on " + formNodeRef + + ", checking " + WCMAppModel.PROP_XML_SCHEMA_OLD); + schemaNodeRef = (NodeRef) + nodeService.getProperty(formNodeRef, WCMAppModel.PROP_XML_SCHEMA_OLD); + if (schemaNodeRef != null) + { + nodeService.setProperty(formNodeRef, WCMAppModel.PROP_XML_SCHEMA, schemaNodeRef); + } + } + if (schemaNodeRef == null) + { + throw new NullPointerException("expected property " + WCMAppModel.PROP_XML_SCHEMA + + " of " + formNodeRef + + " for form " + form.getName() + + " not to be null."); + } this.setSchemaFileName((String)this.nodeService.getProperty(schemaNodeRef, ContentModel.PROP_NAME)); try diff --git a/source/java/org/alfresco/web/forms/FormImpl.java b/source/java/org/alfresco/web/forms/FormImpl.java index f3f068f64a..b95222741d 100644 --- a/source/java/org/alfresco/web/forms/FormImpl.java +++ b/source/java/org/alfresco/web/forms/FormImpl.java @@ -201,9 +201,20 @@ public class FormImpl SAXException { final NodeService nodeService = this.getServiceRegistry().getNodeService(); - final NodeRef schemaNodeRef = (NodeRef) + NodeRef schemaNodeRef = (NodeRef) nodeService.getProperty(folderNodeRef, WCMAppModel.PROP_XML_SCHEMA); if (schemaNodeRef == null) + { + LOGGER.debug(WCMAppModel.PROP_XML_SCHEMA + " not set on " + folderNodeRef + + ", checking " + WCMAppModel.PROP_XML_SCHEMA_OLD); + schemaNodeRef = (NodeRef) + nodeService.getProperty(folderNodeRef, WCMAppModel.PROP_XML_SCHEMA_OLD); + if (schemaNodeRef != null) + { + nodeService.setProperty(folderNodeRef, WCMAppModel.PROP_XML_SCHEMA, schemaNodeRef); + } + } + if (schemaNodeRef == null) { throw new NullPointerException("expected property " + WCMAppModel.PROP_XML_SCHEMA + " of " + folderNodeRef +