From 34bf022c5adce18f124db08af381b45d922a4873 Mon Sep 17 00:00:00 2001 From: Derek Hulley Date: Tue, 19 Jan 2010 14:07:10 +0000 Subject: [PATCH] Merged V3.2 to HEAD 17363: Fix to DbNodeServiceImple to allow restored nodes. 17384: Minor comments 17451: Fix ETHREEOH-2751 / ETWOONE-340 - specialising a node through an action doesn't set default values from model 17459: ETHREEOH-2391 - Invite pending task now has lots of properties 17465: Repo side fix for ETHREEOH-3010: Inbound and outbound Mltext multiple property are not converted correctly 17478: Fix ETHREEOH-3340 - WCM - Revert to snapshot failure (fix AVM getListing -> AVNSync compare -> WCM revertSnapshot) 17483: (record only) Merged V3.1 to V3.2 (record-only) 17482: (record-only) due to earlier back-merge 17493: Fix for ETHREEOH-3342: index.recovery.mode example is incorrect 17494: Fix for ETHREEOH-3027: missingFullTextReindexTrigger (from index-recovery-context.xml) job does not work. 17510: Fix for ETHREEOH-1147: Indexing large indices can lead to Java Heap space. 17511: Fix for ETHREEOH-1271: It is possible to add one category more than one time to the same content or space 17513: ETHREEOH_3366: Altered DictionaryDAOImpl so that passing a null QName into getType and getAspect does not result in an NPE 17531: ETHREEOH-1186: Corrected rssfeed.get.js so a user can configure a RSS Feed dashlet that has been placed on their own dashboard 17550: ETHREEOH-2317: Rule not fired when document has no content 17556: Fixed ETHREEOH-1229: Can't delete space that contains "translation without content" 17558: Fix for ETHREEOH-3356: Forms fail to persist if property or association name has an _ (underscore) in it 17572: Changed caching of person NodeRefs so that duplicates are detected better 17573: Fixed UTF-8 for file with encoded chars 17576: LockAcquisitionException message specific to failed release of taken-over lock ___________________________________________________________________ Modified: svn:mergeinfo Merged /alfresco/BRANCHES/V3.2:r17363,17384,17451,17459,17465,17478,17483,17493-17494,17510-17511,17513,17531,17550,17556,17558,17572-17573,17576 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@18140 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../web/bean/content/BaseContentWizard.java | 54 +++++++++---------- .../component/UISearchCustomProperties.java | 6 ++- 2 files changed, 30 insertions(+), 30 deletions(-) diff --git a/source/java/org/alfresco/web/bean/content/BaseContentWizard.java b/source/java/org/alfresco/web/bean/content/BaseContentWizard.java index fa225b9bfd..46060bea11 100644 --- a/source/java/org/alfresco/web/bean/content/BaseContentWizard.java +++ b/source/java/org/alfresco/web/bean/content/BaseContentWizard.java @@ -42,11 +42,11 @@ import org.alfresco.model.ApplicationModel; import org.alfresco.model.ContentModel; import org.alfresco.service.ServiceRegistry; import org.alfresco.service.cmr.dictionary.TypeDefinition; -import org.alfresco.service.cmr.model.FileInfo; import org.alfresco.service.cmr.repository.ContentService; import org.alfresco.service.cmr.repository.ContentWriter; import org.alfresco.service.cmr.repository.MimetypeService; import org.alfresco.service.cmr.repository.NodeRef; +import org.alfresco.service.namespace.NamespaceService; import org.alfresco.service.namespace.QName; import org.alfresco.web.app.Application; import org.alfresco.web.bean.repository.Repository; @@ -423,40 +423,38 @@ public abstract class BaseContentWizard extends BaseWizardBean containerNodeRef = new NodeRef(Repository.getStoreRef(), nodeId); } - FileInfo fileInfo = this.getFileFolderService().create( - containerNodeRef, - this.fileName, - Repository.resolveToQName(this.objectType)); - NodeRef fileNodeRef = fileInfo.getNodeRef(); - - // set the author aspect - Map authorProps = new HashMap(1, 1.0f); - authorProps.put(ContentModel.PROP_AUTHOR, this.author); - this.getNodeService().addAspect(fileNodeRef, ContentModel.ASPECT_AUTHOR, authorProps); - - if (logger.isDebugEnabled()) - logger.debug("Created file node for file: " + this.fileName); - - // apply the titled aspect - title and description - Map titledProps = new HashMap(3, 1.0f); - titledProps.put(ContentModel.PROP_TITLE, this.title); - titledProps.put(ContentModel.PROP_DESCRIPTION, this.description); - this.getNodeService().addAspect(fileNodeRef, ContentModel.ASPECT_TITLED, titledProps); - - if (logger.isDebugEnabled()) - logger.debug("Added titled aspect with properties: " + titledProps); - - // apply the inlineeditable aspect + // apply the inline editable aspect (by adding the property at create time) + Map editProps = new HashMap(6); if (this.inlineEdit == true) { - Map editProps = new HashMap(1, 1.0f); editProps.put(ApplicationModel.PROP_EDITINLINE, this.inlineEdit); - this.getNodeService().addAspect(fileNodeRef, ApplicationModel.ASPECT_INLINEEDITABLE, editProps); - if (logger.isDebugEnabled()) logger.debug("Added inlineeditable aspect with properties: " + editProps); } + // set the name + editProps.put(ContentModel.PROP_NAME, this.fileName); + + // set the author property + editProps.put(ContentModel.PROP_AUTHOR, this.author); + + // apply the titled aspect - title and description + editProps.put(ContentModel.PROP_TITLE, this.title); + editProps.put(ContentModel.PROP_DESCRIPTION, this.description); + if (logger.isDebugEnabled()) + logger.debug("Added titled aspect with properties: " + this.title + ", " + this.description); + + // create the node + NodeRef fileNodeRef = this.getNodeService().createNode( + containerNodeRef, + ContentModel.ASSOC_CONTAINS, + QName.createQName(NamespaceService.CONTENT_MODEL_1_0_URI, this.fileName), + Repository.resolveToQName(this.objectType), + editProps).getChildRef(); + + if (logger.isDebugEnabled()) + logger.debug("Created file node for file: " + this.fileName); + // get a writer for the content and put the file ContentWriter writer = getContentService().getWriter(fileNodeRef, ContentModel.PROP_CONTENT, true); // set the mimetype and encoding diff --git a/source/java/org/alfresco/web/ui/repo/component/UISearchCustomProperties.java b/source/java/org/alfresco/web/ui/repo/component/UISearchCustomProperties.java index aac27aead6..e0351bad2d 100644 --- a/source/java/org/alfresco/web/ui/repo/component/UISearchCustomProperties.java +++ b/source/java/org/alfresco/web/ui/repo/component/UISearchCustomProperties.java @@ -177,7 +177,8 @@ public class UISearchCustomProperties extends SelfRenderingComponent implements TypeDefinition typeDef = dd.getType(type); if (typeDef == null) { - throw new AlfrescoRuntimeException("No Type Definition found for: " + property.Type + " - Was an Aspect expected?"); + logger.warn("No Type Definition found for: " + property.Type + " - Was an Aspect expected?"); + continue; } propDef = typeDef.getProperties().get(Repository.resolveToQName(property.Property)); } @@ -187,7 +188,8 @@ public class UISearchCustomProperties extends SelfRenderingComponent implements AspectDefinition aspectDef = dd.getAspect(aspect); if (aspectDef == null) { - throw new AlfrescoRuntimeException("No Aspect Definition found for: " + property.Aspect + " - Was a Type expected?"); + logger.warn("No Aspect Definition found for: " + property.Aspect + " - Was a Type expected?"); + continue; } propDef = aspectDef.getProperties().get(Repository.resolveToQName(property.Property)); }