From b99c60a115c1fdd5826f829bf5d36da11744349d Mon Sep 17 00:00:00 2001 From: Kevin Roast Date: Fri, 23 Oct 2009 09:01:41 +0000 Subject: [PATCH] Fix to unreported issue where FormImpl class was not correctly deserializable, it would not correctly reinitialize from serialized state due to a static initialisation block relying on a FacesContext being available. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@17107 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- source/java/org/alfresco/web/forms/FormImpl.java | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/source/java/org/alfresco/web/forms/FormImpl.java b/source/java/org/alfresco/web/forms/FormImpl.java index 16cb5d8e85..0a7a09d152 100644 --- a/source/java/org/alfresco/web/forms/FormImpl.java +++ b/source/java/org/alfresco/web/forms/FormImpl.java @@ -73,12 +73,8 @@ public class FormImpl implements Form private transient FormsService formsService; private transient Map renderingEngineTemplates; - private final static LinkedList PROCESSORS = new LinkedList(); + private transient static LinkedList PROCESSORS = null; - static - { - FormImpl.PROCESSORS.add(new XFormsProcessor()); - } protected FormImpl(final NodeRef folderNodeRef, final FormsService formsService) { @@ -255,6 +251,14 @@ public class FormImpl implements Form public List getFormProcessors() { + synchronized (FormImpl.class) + { + if (PROCESSORS == null) + { + PROCESSORS = new LinkedList(); + PROCESSORS.add(new XFormsProcessor()); + } + } return PROCESSORS; }