Fallout fix from template/script refactor.

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@5524 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Roy Wetherall
2007-04-23 13:19:26 +00:00
parent c8cf88179a
commit 89875c8037
3 changed files with 27 additions and 2 deletions

View File

@@ -33,11 +33,9 @@ import java.util.Map;
import org.alfresco.repo.jscript.Node;
import org.alfresco.repo.jscript.ScriptableHashMap;
import org.alfresco.repo.template.AbsoluteUrlMethod;
import org.alfresco.repo.template.TemplateNode;
import org.alfresco.service.ServiceRegistry;
import org.alfresco.service.cmr.repository.NodeRef;
import org.alfresco.service.cmr.repository.ScriptLocation;
import org.alfresco.service.cmr.repository.TemplateProcessorExtension;
import org.alfresco.service.cmr.repository.TemplateImageResolver;
import org.alfresco.service.descriptor.DescriptorService;
import org.alfresco.web.scripts.WebScriptDescription.RequiredAuthentication;

View File

@@ -26,6 +26,7 @@ package org.alfresco.web.scripts;
import org.alfresco.repo.template.FreeMarkerProcessor;
import org.alfresco.repo.template.QNameAwareObjectWrapper;
import org.alfresco.service.cmr.repository.ProcessorExtension;
import org.alfresco.util.AbstractLifecycleBean;
import org.springframework.beans.BeansException;
import org.springframework.context.ApplicationContext;
@@ -54,6 +55,7 @@ public class TemplateProcessor extends FreeMarkerProcessor implements Applicatio
private TemplateLoader templateLoader = null;
private String defaultEncoding;
private Configuration templateConfig;
private FreeMarkerProcessor freeMarkerProcessor;
/* (non-Javadoc)
@@ -82,6 +84,16 @@ public class TemplateProcessor extends FreeMarkerProcessor implements Applicatio
{
this.templateLoader = templateLoader;
}
/**
* Set the freemarker processor
*
* @param freeMarkerProcessor the free marker processor
*/
public void setFreeMarkerProcessor(FreeMarkerProcessor freeMarkerProcessor)
{
this.freeMarkerProcessor = freeMarkerProcessor;
}
/**
* Reset template cache
@@ -125,6 +137,18 @@ public class TemplateProcessor extends FreeMarkerProcessor implements Applicatio
templateConfig = config;
}
/**
* Tempory fix to initialise this template processor with the freeMarker extensions expected by
* the templates.
*/
private void initProcessorExtensions()
{
for (ProcessorExtension processorExtension : this.freeMarkerProcessor.getProcessorExtensions())
{
this.registerProcessorExtension(processorExtension);
}
}
/* (non-Javadoc)
* @see org.springframework.context.ApplicationContextAware#setApplicationContext(org.springframework.context.ApplicationContext)
*/
@@ -150,6 +174,7 @@ public class TemplateProcessor extends FreeMarkerProcessor implements Applicatio
protected void onBootstrap(ApplicationEvent event)
{
initConfig();
initProcessorExtensions();
}
@Override