X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=source%2Fmir%2Fmisc%2FHTMLTemplateProcessor.java;h=8a797057951f1a7bc371e9b95873411e99962f4f;hb=546961c7d44afc07790196556aaba1103b0ab4e0;hp=1b45367ad2baaa9ba7b2935506586f8c64d52d8e;hpb=8b3a5af41547dd14645ef3af570f705d6972b63f;p=mir.git diff --git a/source/mir/misc/HTMLTemplateProcessor.java b/source/mir/misc/HTMLTemplateProcessor.java index 1b45367a..8a797057 100755 --- a/source/mir/misc/HTMLTemplateProcessor.java +++ b/source/mir/misc/HTMLTemplateProcessor.java @@ -42,13 +42,21 @@ public final class HTMLTemplateProcessor { templateDir = MirConfig.getPropWithHome("HTMLTemplateProcessor.Dir"); templateCache = new FileTemplateCache(templateDir); templateCache.setLoadingPolicy(templateCache.LOAD_ON_DEMAND); - templateCache.startAutoUpdate(); + // gone in freemarker 1.7.1 + // templateCache.startAutoUpdate(); theLog = Logfile.getInstance(MirConfig.getPropWithHome("HTMLTemplateProcessor.Logfile")); docRoot = MirConfig.getProp("RootUri"); - /** @todo - quickhack: action-root is only for Mir!!!!, idfx - actionRoot = docRoot + "/servlet/" + MirConfig.getProp("ServletName");*/ + //the quick hack is back in effect as it was more broken than ever before + // -mh + // sorry: nadir back in town, i have to debug the mirbase.jar in the + // nadir evironment. from my point of coding, this needs an urgent + // fixxx. + // yeah, from my point too - tob. + //actionRoot = docRoot + "/servlet/" + MirConfig.getProp("ServletName"); + //actionRoot = docRoot + "/servlet/NadirAktuell"; + actionRoot = docRoot + "/servlet/Mir"; + openAction = MirConfig.getProp("Producer.OpenAction"); productionHost = MirConfig.getProp("Producer.ProductionHost"); videoHost = MirConfig.getProp("Producer.VideoHost"); @@ -56,7 +64,6 @@ public final class HTMLTemplateProcessor { imageHost = MirConfig.getProp("Producer.Image.Host"); producerDocRoot = MirConfig.getProp("Producer.DocRoot"); producerStorageRoot = MirConfig.getProp("Producer.StorageRoot"); - } /** @@ -144,7 +151,7 @@ public final class HTMLTemplateProcessor { * out * * @param templateFilename - * @param mergeData + * @param mergeData - a HashMap with mergeData to be converted in SimpleHash * @param out * @exception HTMLParseException */ @@ -180,12 +187,13 @@ public final class HTMLTemplateProcessor { */ public static void process(HttpServletResponse res,String templateFilename, TemplateModelRoot tmr, PrintWriter out) throws HTMLParseException { - if (out==null) throw new HTMLParseException("KEIN OUTPUTSTREAM"); + if (out==null) throw new HTMLParseException("no outputstream"); Template tmpl = getTemplateFor(templateFilename); - if (tmpl == null) throw new HTMLParseException("KEIN TEMPLATE: " + templateFilename); + if (tmpl == null) throw new HTMLParseException("no template: " + templateFilename); if (tmr==null) tmr = new SimpleHash(); - String session=null; + /** @todo what is this for? (rk) */ + String session=""; if (res!=null) { session=res.encodeURL(""); } @@ -215,16 +223,16 @@ public final class HTMLTemplateProcessor { /** - * Wandelt eine Entity-Liste in eine SimpleList von SimpleHashes um. + * Converts Entity-List to SimpleList of SimpleHashes. * @param aList ist eine Liste von Entity * @return eine freemarker.template.SimpleList von SimpleHashes. */ public static SimpleList makeSimpleList(EntityList aList) throws StorageObjectException { - SimpleList simpleList = new SimpleList(); + SimpleList simpleList = new SimpleList(); if (aList != null) { - for(int i=0;i"); - return null; - } + public static SimpleHash makeSimpleHash(Entity entity) { + if (entity != null) { + theLog.printWarning("## using deprecated makeSimpleHash(entity) - a waste of resources"); + return makeSimpleHash(entity.getValues()); } + else + return null; + } /** * Konvertiert ein Hashtable mit den keys und values als String @@ -291,37 +302,38 @@ public final class HTMLTemplateProcessor { /** - * Wandelt EntityListe in SimpleHash um, und versieht die Liste mit StandardInfos, - * die aus EntityList kommen. + * Converts EntityList in SimpleHash and adds additional information + * to the returned SimpleHash * * @param entList - * @return SimpleHash mit Entity-Daten und ZusatzInfos. + * @return SimpleHash returns SimpleHash with the converted EntityList plus + * additional Data about the list. * @exception StorageObjectException */ - public static SimpleHash makeSimpleHashWithEntitylistInfos(EntityList entList) throws StorageObjectException { - SimpleHash modelRoot = new SimpleHash(); - if (entList!=null) { - modelRoot.put("contentlist", makeSimpleList(entList)); - modelRoot.put("count", new SimpleScalar((new Integer(entList.getCount())).toString())); - if (entList.getWhere()!=null) { - modelRoot.put("where", new SimpleScalar(entList.getWhere())); - modelRoot.put("where_encoded", new SimpleScalar(URLEncoder.encode(entList.getWhere()))); - } - - if(entList.getOrder()!=null) { - modelRoot.put("order", new SimpleScalar(entList.getOrder())); - modelRoot.put("order_encoded", new SimpleScalar(URLEncoder.encode(entList.getOrder()))); - } - modelRoot.put("from", new SimpleScalar((new Integer(entList.getFrom())).toString())); - modelRoot.put("to", new SimpleScalar((new Integer(entList.getTo())).toString())); - - if (entList.hasNextBatch()) - modelRoot.put("next", new SimpleScalar((new Integer(entList.getNextBatch())).toString())); - if (entList.hasPrevBatch()) - modelRoot.put("prev", new SimpleScalar((new Integer(entList.getPrevBatch())).toString())); + + public static SimpleHash makeSimpleHashWithEntitylistInfos(EntityList entList) throws StorageObjectException { + SimpleHash modelRoot = new SimpleHash(); + if (entList!=null) { + modelRoot.put("contentlist", makeSimpleList(entList)); + modelRoot.put("count", new SimpleScalar((new Integer(entList.getCount())).toString())); + if (entList.getWhere()!=null) { + modelRoot.put("where", new SimpleScalar(entList.getWhere())); + modelRoot.put("where_encoded", new SimpleScalar(URLEncoder.encode(entList.getWhere()))); + } + if(entList.getOrder()!=null) { + modelRoot.put("order", new SimpleScalar(entList.getOrder())); + modelRoot.put("order_encoded", new SimpleScalar(URLEncoder.encode(entList.getOrder()))); } - return modelRoot; + modelRoot.put("from", new SimpleScalar((new Integer(entList.getFrom())).toString())); + modelRoot.put("to", new SimpleScalar((new Integer(entList.getTo())).toString())); + + if (entList.hasNextBatch()) + modelRoot.put("next", new SimpleScalar((new Integer(entList.getNextBatch())).toString())); + if (entList.hasPrevBatch()) + modelRoot.put("prev", new SimpleScalar((new Integer(entList.getPrevBatch())).toString())); } + return modelRoot; + } /** * Private methods to get template from a templateFilename @@ -331,11 +343,17 @@ public final class HTMLTemplateProcessor { */ private static Template getTemplateFor(String templateFilename) throws HTMLParseException { - if (templateFilename!=null) return templateCache.getTemplate(templateFilename); - else { + Template returnTemplate = null; + if (templateFilename!=null) + returnTemplate = templateCache.getTemplate(templateFilename); + + + if (returnTemplate==null) { theLog.printError("CACHE (ERR): Unknown template: " + templateFilename); throw new HTMLParseException("Templatefile: "+ templateFilename + " not found."); } + + return returnTemplate; } public static void stopAutoUpdate(){