/* Dateiverwaltung - File management in your browser Copyright (C) 2017 Ulrich Hilger, http://uhilger.de This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details. You should have received a copy of the GNU Affero General Public License along with this program. If not, see . */ package de.uhilger.wbx; import java.io.File; import java.util.logging.Logger; import javax.servlet.ServletContext; /** * */ public class WbxUtils { private static final Logger logger = Logger.getLogger(WbxUtils.class.getName()); /** * Bei der WebBox ist das Datenverzeichnis relativ zum Verzeichnis * $CATALINA_BASE/webapps untergebracht. * Die Abfrage ServletContext.getRealPath * liefert das Verzeichnis des Context dieser Webanwendung, also * $CATALINA_BASE/webapps/file-cms * oder * $WBX/sys/base/webapps/file-cms * * Unter Windows z.B. * C:\Users\fred\Documents\srv\wbx\sys\base\webapps\file-cms * Unter Linux oder Mac OS z.B. * /home/fred/srv/wbx/sys/base/webapps/file-cms * * Das Datenverzeichis liegt dann auf * $WBX/daten * * Mit dem Verzeichnis des Context dieser Webanwendung ist das * Datenverzeichnis der WebBox hart kodierbar mit dieser Methode * * @return Verzeichnis 'daten' der WebBox */ public static File getWbxDataDir(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()); return file; } }