Dateiverwaltung für die WebBox
ulrich
2017-02-28 3c4b104eb3d9bf4e651dffbbd956985764bcacce
getBase angepasst
3 files modified
29 ■■■■■ changed files
src/java/de/uhilger/filecms/api/FileMgr.java 11 ●●●●● patch | view | raw | blame | history
src/java/de/uhilger/filecms/web/Initialiser.java 16 ●●●● patch | view | raw | blame | history
src/java/logging.properties 2 ●●● patch | view | raw | blame | history
src/java/de/uhilger/filecms/api/FileMgr.java
@@ -187,7 +187,7 @@
  /* ---- Hilfsfunktionen ---- */
  
  private File getTargetDir(String relPath) {
    logger.finer(relPath);
    logger.fine(relPath);
    String targetPath = null;
    if(relPath.startsWith(PUB_DIR_NAME)) {
      targetPath = PUB_DIR_PATH + getUserName() + "/" + relPath.substring(PUB_DIR_NAME.length());
@@ -196,15 +196,18 @@
    } else {
      // kann eigentlich nicht sein..
    }
    logger.finer(targetPath);
    logger.fine(targetPath);
    File targetDir = new File(getBase().getAbsolutePath(), targetPath);
    return targetDir;
  }
  private FileRef getBase() {
    FileRef base = null;
    Object o = getServletContext().getAttribute(Initialiser.FILE_BASE);
    if(o instanceof FileRef) {
      base = (FileRef) o;
    if(o instanceof String) {
      String baseStr = (String) o;
      logger.fine(baseStr);
      File file = new File(baseStr);
      base = new FileRef(file.getAbsolutePath(), file.isDirectory());
    }
    return base;
  }
src/java/de/uhilger/filecms/web/Initialiser.java
@@ -18,9 +18,9 @@
package de.uhilger.filecms.web;
import de.uhilger.filecms.api.FileMgr;
import de.uhilger.filesystem.FileRef;
import java.io.File;
import java.net.URL;
import java.util.logging.Logger;
import javax.servlet.ServletContext;
import javax.servlet.ServletContextEvent;
@@ -87,7 +87,7 @@
    */
    
    File file = new File(".");
    logger.finer(file.getAbsolutePath());
    logger.fine(file.getAbsolutePath());
    String path = file.getAbsolutePath();
    path = path.substring(0, path.length() - 1);
    file = new File(path);
@@ -98,7 +98,7 @@
    }
    file = new File(file, "daten/");
    ref = new FileRef(file.getAbsolutePath(), file.isDirectory());
    logger.finer(ref.getAbsolutePath());
    logger.fine(ref.getAbsolutePath());
    return ref;
  }
  
@@ -108,7 +108,15 @@
  public void contextInitialized(ServletContextEvent sce) {
    // hier kann etwas initialisiert werden
    ServletContext ctx = sce.getServletContext();
    ctx.setAttribute(FILE_BASE, getBase());
    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());
    ctx.setAttribute(FILE_BASE, file.getAbsolutePath());
  }
  @Override
src/java/logging.properties
@@ -64,4 +64,4 @@
# For example, set the com.xyz.foo logger to only log SEVERE
# messages:
# com.xyz.foo.level = SEVERE
de.uhilger.filecms.level = FINE
de.uhilger.filecms.level = INFO