Merged V3.2 to HEAD

16823: ETHREEOH-3028 -  Multivalue property does not allow deploy
    16827: ETHREEOH-2678 - Unfriendly system error occurs when trying to view Workflows information on content Details page if workflow was canceled
    16832: ALFCOM-3021 - Replace 3.1 POI with version 3.5
    16927: 15614 - ETHREEOH-2273 - FSR Prepare callback exception messages

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@16978 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Mark Rogers
2009-10-16 09:23:10 +00:00
parent f4e057c0af
commit 7df0bd8088
4 changed files with 41 additions and 12 deletions

View File

@@ -850,7 +850,7 @@ public class DeploymentServiceImpl implements DeploymentService
}
catch (Exception e)
{
throw new AVMException("Could not connect to remote FSR, transportName:" + transportName + ", hostName:" + hostName + ", port: " + port, e);
throw new AVMException("Could not connect to remote deployment receiver, transportName:" + transportName + ", hostName:" + hostName + ", port: " + port, e);
}
}

View File

@@ -687,13 +687,23 @@ public class PropertyValue implements Cloneable, Serializable
}
else if (value instanceof Collection)
{
Collection collection = (Collection) value;
ValueType collectionValueType = makeValueType(typeQName);
// convert the collection values - we need to do this to ensure that the
// values provided conform to the given type
ArrayList<Serializable> convertedCollection = collectionValueType.convert(collection);
// the persisted type is, nonetheless, a serializable
setPersistedValue(ValueType.SERIALIZABLE, convertedCollection);
if(typeQName != null)
{
Collection collection = (Collection) value;
ValueType collectionValueType = makeValueType(typeQName);
// convert the collection values - we need to do this to ensure that the
// values provided conform to the given type
ArrayList<Serializable> convertedCollection = collectionValueType.convert(collection);
// the persisted type is, nonetheless, a serializable
setPersistedValue(ValueType.SERIALIZABLE, convertedCollection);
}
else
{
setPersistedValue(ValueType.SERIALIZABLE, value);
}
setMultiValued(true);
}
else

View File

@@ -28,6 +28,9 @@ import java.util.List;
import org.alfresco.repo.processor.BaseProcessorExtension;
import org.alfresco.repo.template.BaseContentNode.TemplateContentData;
import org.alfresco.service.cmr.repository.ContentIOException;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import freemarker.ext.beans.BeanModel;
import freemarker.template.TemplateMethodModelEx;
@@ -43,6 +46,7 @@ import freemarker.template.TemplateNumberModel;
*/
public final class CropContentMethod extends BaseProcessorExtension implements TemplateMethodModelEx
{
private static final Log logger = LogFactory.getLog(CropContentMethod.class);
/**
* @see freemarker.template.TemplateMethodModel#exec(java.util.List)
*/
@@ -60,9 +64,23 @@ public final class CropContentMethod extends BaseProcessorExtension implements T
Object wrapped = ((BeanModel)arg0).getWrappedObject();
if (wrapped instanceof TemplateContentData)
{
int bytes = ((TemplateNumberModel)arg1).getAsNumber().intValue();
result = ((TemplateContentData)wrapped).getContentAsText(bytes);
int bytes = ((TemplateNumberModel)arg1).getAsNumber().intValue();
try
{
result = ((TemplateContentData)wrapped).getContentAsText(bytes);
}
catch (ContentIOException e)
{
logger.warn("unable to getContentAsText", e);
/*
* Unable to extract content - return empty text instead.
* Probably here through a transformation failure.
* This method is called from FreeMarker so throwing the
* exception causes problems.
*/
result = "";
}
}
}
}

View File

@@ -187,7 +187,8 @@ public class WorkflowPackageImpl implements WorkflowPackageComponent
for (ChildAssociationRef packageItemParent : packageItemParents)
{
NodeRef parentRef = packageItemParent.getParentRef();
if (nodeService.hasAspect(parentRef, WorkflowModel.ASPECT_WORKFLOW_PACKAGE))
if (nodeService.hasAspect(parentRef, WorkflowModel.ASPECT_WORKFLOW_PACKAGE)
&& !nodeService.hasAspect(parentRef, ContentModel.ASPECT_ARCHIVED))
{
String workflowInstance = (String)nodeService.getProperty(parentRef, WorkflowModel.PROP_WORKFLOW_INSTANCE_ID);
if (workflowInstance != null && workflowInstance.length() > 0)