mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-06-16 17:55:15 +00:00
Merged V2.2 to HEAD
8630: Merged V2.1 to V2.2 8513: Fixed AR-2157: Integrity checking fails when target roles are present on child associations 8517: Fixed AR-2171: NPE restoring large hierarchy 8519: New workflow description field limited to 100 characters (AWC-1938) 8520: Removed copy of mysql connector to tomcat distribution 8529: Fix for pop-up task panel, when task has due date 8537: Fix for AWC-1951 8538: AR-2141: Problem copying large hierarchical folder structures 8594: Closing of servlet output stream in TemplateContentServlet 8616: Fix for WCM-1134 (editing rich text area, causes relative links to become absolute in IE) git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@9168 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
parent
60e308f7e9
commit
a20061ccf1
@ -36,6 +36,7 @@ import org.alfresco.error.AlfrescoRuntimeException;
|
||||
import org.alfresco.i18n.I18NUtil;
|
||||
import org.alfresco.model.ApplicationModel;
|
||||
import org.alfresco.model.ContentModel;
|
||||
import org.alfresco.repo.action.ActionServiceImpl;
|
||||
import org.alfresco.repo.policy.ClassPolicyDelegate;
|
||||
import org.alfresco.repo.policy.JavaBehaviour;
|
||||
import org.alfresco.repo.policy.PolicyComponent;
|
||||
@ -68,6 +69,11 @@ import org.alfresco.service.namespace.NamespaceService;
|
||||
import org.alfresco.service.namespace.QName;
|
||||
import org.alfresco.service.namespace.RegexQNamePattern;
|
||||
import org.alfresco.util.ParameterCheck;
|
||||
import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
import org.apache.tools.ant.taskdefs.War;
|
||||
|
||||
import freemarker.log.Logger;
|
||||
|
||||
/**
|
||||
* Node operations service implmentation.
|
||||
@ -76,6 +82,11 @@ import org.alfresco.util.ParameterCheck;
|
||||
*/
|
||||
public class CopyServiceImpl implements CopyService
|
||||
{
|
||||
/**
|
||||
* The logger
|
||||
*/
|
||||
private static Log logger = LogFactory.getLog(ActionServiceImpl.class);
|
||||
|
||||
/** I18N labels */
|
||||
private String COPY_OF_LABEL = "copy_service.copy_of_label";
|
||||
|
||||
@ -733,7 +744,16 @@ public class CopyServiceImpl implements CopyService
|
||||
if (this.nodeService.hasAspect(destinationNodeRef, aspect) == false)
|
||||
{
|
||||
// Error since the aspect has not been added to the destination node (should never happen)
|
||||
throw new CopyServiceException("The aspect has not been added to the destination node.");
|
||||
if (logger.isWarnEnabled() == true)
|
||||
{
|
||||
logger.warn("WARNING: the aspect " + aspect.toString() + " could not be found on node " + destinationNodeRef.toString() + "during copy. It has been reapplied.");
|
||||
}
|
||||
|
||||
// For some reason the aspect has not been added, so re-add it
|
||||
this.nodeService.addAspect(
|
||||
destinationNodeRef,
|
||||
aspect,
|
||||
copyDetails.getProperties(aspect));
|
||||
}
|
||||
|
||||
copyChildAssociations(aspect, destinationNodeRef, copyDetails, copyChildren, copiedChildren);
|
||||
|
@ -187,6 +187,7 @@ public class NodeArchiveServiceImpl implements NodeArchiveService
|
||||
{
|
||||
report.setCause(e);
|
||||
report.setStatus(RestoreStatus.FAILURE_OTHER);
|
||||
logger.error("An unhandled exception stopped the restore", e);
|
||||
}
|
||||
// done
|
||||
if (logger.isDebugEnabled())
|
||||
|
@ -1837,6 +1837,11 @@ public class DbNodeServiceImpl extends AbstractNodeServiceImpl
|
||||
}
|
||||
|
||||
Node nodeToMove = oldNodeStatus.getNode();
|
||||
if (nodeToMove == null)
|
||||
{
|
||||
// Ignore it. It was moved already.
|
||||
continue;
|
||||
}
|
||||
NodeRef oldNodeRef = nodeToMove.getNodeRef();
|
||||
nodeToMove.setStore(store);
|
||||
NodeRef newNodeRef = nodeToMove.getNodeRef();
|
||||
|
@ -98,7 +98,7 @@ public class AssocTargetRoleIntegrityEvent extends AbstractIntegrityEvent
|
||||
if (assocRoleQName != null)
|
||||
{
|
||||
// the assoc defines a role name - check it
|
||||
RegexQNamePattern rolePattern = new RegexQNamePattern(assocRoleQName.toString());
|
||||
RegexQNamePattern rolePattern = new RegexQNamePattern(assocRoleQName.getNamespaceURI(), assocRoleQName.getLocalName());
|
||||
if (!rolePattern.isMatch(assocQName))
|
||||
{
|
||||
IntegrityRecord result = new IntegrityRecord(
|
||||
|
@ -38,7 +38,7 @@ public class InvalidTypeException extends InvalidClassException
|
||||
|
||||
public InvalidTypeException(QName typeName)
|
||||
{
|
||||
super(null, typeName);
|
||||
super("Invalid type: " + typeName, typeName);
|
||||
}
|
||||
|
||||
public InvalidTypeException(String msg, QName typeName)
|
||||
|
Loading…
x
Reference in New Issue
Block a user