eViL_oNe
27.07.2005, 21:52
Hallo,
ich nutze derzeit commons-digester um Beans aus XML Dateien zu erzeugen und sie später in ein gewünschtes Ausgabeformat (Email, HTML etc) umzuwandeln.
Das klappt so weit ganz gut, nur ist dieser Vorgang relativ zeitraubend. Da sich die entsprechenden Dateien selten bis nie ändern (Dokument und Email Templates), wollte ich sie unter WEB-INF/cache einmal erzeugen, und nur dann aktualisieren, wenn lastModified() von der XML-Datei > lastModified() von der Cache-Datei.
Mein Problem ist: wie lese ich das aktuelle Verzeichnis eines Servlets aus?
<% File dir = new File( "." ); %>
<%= dir.getCanonicalPath() %>
führt nicht zum Ziel, sondern gibt mir c:/programme/eclipse aus (eher kurios imo)
<%= this.getServletContext().getRealPath( "" ) %>
sieht etwas besser aus, da kommt <Eclipse Workplace Path>/<project name>/.deployables/<project name>
Ist dies der richtige Weg, das aktuelle Verzeichnis zu ermitteln? Man könnte ja den Pfad leicht durch die Konkatenation von "/WEB-INF/cache/<filename>" erweitern, und dann mit dem Cachen beginnen - eine kleine Utility-Klasse der Form CacheOutput.store( String relativePathName, String content, long lastModified ) ist schnell geschrieben!
ich nutze derzeit commons-digester um Beans aus XML Dateien zu erzeugen und sie später in ein gewünschtes Ausgabeformat (Email, HTML etc) umzuwandeln.
Das klappt so weit ganz gut, nur ist dieser Vorgang relativ zeitraubend. Da sich die entsprechenden Dateien selten bis nie ändern (Dokument und Email Templates), wollte ich sie unter WEB-INF/cache einmal erzeugen, und nur dann aktualisieren, wenn lastModified() von der XML-Datei > lastModified() von der Cache-Datei.
Mein Problem ist: wie lese ich das aktuelle Verzeichnis eines Servlets aus?
<% File dir = new File( "." ); %>
<%= dir.getCanonicalPath() %>
führt nicht zum Ziel, sondern gibt mir c:/programme/eclipse aus (eher kurios imo)
<%= this.getServletContext().getRealPath( "" ) %>
sieht etwas besser aus, da kommt <Eclipse Workplace Path>/<project name>/.deployables/<project name>
Ist dies der richtige Weg, das aktuelle Verzeichnis zu ermitteln? Man könnte ja den Pfad leicht durch die Konkatenation von "/WEB-INF/cache/<filename>" erweitern, und dann mit dem Cachen beginnen - eine kleine Utility-Klasse der Form CacheOutput.store( String relativePathName, String content, long lastModified ) ist schnell geschrieben!