From 5410ce4fccf2d0c91ac914f2c4ab7d93507c3960 Mon Sep 17 00:00:00 2001 From: ulrich <undisclosed> Date: Tue, 01 Aug 2017 12:23:59 +0000 Subject: [PATCH] Dateiliste geordnet nach Datum hinzugefuegt --- src/java/de/uhilger/filecms/web/Initialiser.java | 87 ++++++++++++++++++++++--------------------- 1 files changed, 44 insertions(+), 43 deletions(-) diff --git a/src/java/de/uhilger/filecms/web/Initialiser.java b/src/java/de/uhilger/filecms/web/Initialiser.java index 30e3d56..eece13c 100644 --- a/src/java/de/uhilger/filecms/web/Initialiser.java +++ b/src/java/de/uhilger/filecms/web/Initialiser.java @@ -31,46 +31,8 @@ private static final Logger logger = Logger.getLogger(Initialiser.class.getName()); - public static final String FILE_BASE = "filebase"; public static final String DATENABLAGE = "datenAblage"; - - /* ----- ServletContextListener Implementation ----- */ - - @Override - public void contextInitialized(ServletContextEvent sce) { - // hier kann etwas initialisiert werden - ServletContext ctx = sce.getServletContext(); - ablageErmitteln(ctx); - } - - /** - * Die Dateiablage wird entweder auf einen absoluten Pfad gesetzt, - * der im Deployment Descriptor hinterlegt werden kann oder, wenn - * dort nichts eingetragen ist, auf den hart kodierten Pfad - * der WebBox. - * - * @param ctx der ServletContext, in den die Angabe eingetragen wird. Dort - * ist anschliessend die Angabe unter Initialiser.FILE_BASE abrufbar - */ - private void ablageErmitteln(ServletContext ctx) { - Object o = ctx.getInitParameter(DATENABLAGE); - try { - if(o instanceof String) { - String pfad = o.toString(); - if(pfad.trim().length() > 0) { - ctx.setAttribute(FILE_BASE, pfad); - logger.fine("Basis: " + pfad); - } else { - ctx.setAttribute(FILE_BASE, getWbxDataDir(ctx).getAbsolutePath()); - } - } else { - ctx.setAttribute(FILE_BASE, getWbxDataDir(ctx).getAbsolutePath()); - } - } catch(Exception ex) { - ctx.setAttribute(FILE_BASE, getWbxDataDir(ctx).getAbsolutePath()); - } - } /** * Bei der WebBox ist das Datenverzeichnis relativ zum Verzeichnis @@ -94,21 +56,60 @@ * * @return Verzeichnis 'daten' der WebBox */ - private File getWbxDataDir(ServletContext ctx) { + protected File getWbxDataDir(ServletContext ctx) { + File file = getWbxDir(ctx); + file = new File(file, "daten/"); + logger.fine("WebBox Datenbasis: " + file.getAbsolutePath()); + return file; + } + + protected File getWbxDir(ServletContext ctx) { String path = ctx.getRealPath("/"); logger.fine("getRealPath: " + path); // file-cms in webapps File file = new File(path); file = file.getParentFile().getParentFile().getParentFile().getParentFile(); - file = new File(file, "daten/"); - logger.fine("Basis: " + file.getAbsolutePath()); + logger.fine("WebBox: " + file.getAbsolutePath()); return file; + } + + /** + * Die Dateiablage wird entweder auf einen absoluten Pfad gesetzt, + * der im Deployment Descriptor hinterlegt werden kann oder, wenn + * dort nichts eingetragen ist, auf den hart kodierten Pfad + * der WebBox. + * + * @param ctx der ServletContext, in den die Angabe eingetragen wird. Dort + * ist anschliessend die Angabe unter Initialiser.FILE_BASE abrufbar + */ + protected void ablageErmitteln(ServletContext ctx) { + Object o = ctx.getInitParameter(DATENABLAGE); + try { + if(o instanceof String) { + String pfad = o.toString(); + if(pfad.trim().length() > 0) { + ctx.setAttribute(FILE_BASE, pfad); + logger.fine("Basis: " + pfad); + } else { + ctx.setAttribute(FILE_BASE, getWbxDataDir(ctx).getAbsolutePath()); + } + } else { + ctx.setAttribute(FILE_BASE, getWbxDataDir(ctx).getAbsolutePath()); + } + } catch(Exception ex) { + ctx.setAttribute(FILE_BASE, getWbxDataDir(ctx).getAbsolutePath()); + } + } + + @Override + public void contextInitialized(ServletContextEvent sce) { + ServletContext ctx = sce.getServletContext(); + ablageErmitteln(ctx); } @Override public void contextDestroyed(ServletContextEvent sce) { - // hier wird alles wieder aufgeraeumt ServletContext ctx = sce.getServletContext(); ctx.removeAttribute(FILE_BASE); } - + } -- Gitblit v1.9.3