Pfad der Homepage rausfinden (Servlet)

yan1

Erfahrenes Mitglied
Hallo,

Mein Problem ist, dass sich in meinem Homepage Ordner (Tomcat) eine Datei befindet, die ich per Servlet (das im Ordner Homepage\WEB-INF\classes\homepage\servlets befindet) öffnen will.

Ich muss jetzt im Servlet den Pfad dieses Ordners (Root Ordner des Tomcat) herausfinden, um die Datei zu öffnen, denn wenn ich die Datei "test.file" öffne, findet er sie nicht, wenn ich "/test.file" öffne findet er sie auch nich, ich muss den vollen Pfad im System, also C:\Dokumente und Einstellungen\ etc.. Das will ich aber nicht, weil dieser Pfad sich ändern kann wenn das Servlet mal unter einem anderem System laufen soll etc.

Ich suche also irgendeine Möglichkeit den Pfad des Homepage Ordnes herausfinden, in dem das Servlet gestartet wird. Ist das möglich?

Lg, Yanick
 
Probier es mal mit
Code:
request.getRealPath(request.getContextPath())
Damit kommst Du zu Deinem Projektverzeichnis.

Wenn Du dann folgendes machst, kannst Du direkt zu Deiner Datei kommen, die z.B. im selben
Verzeichnis wie Dein Projekt liegt:
Code:
String realPath = ""+request.getRealPath(request.getContextPath());		
realPath = (String)realPath.subSequence(0,realPath.length()-x);
String file = ""+realPath+"test.file";
Wobei x die Länge von WebContent\Projektname ist
 
Zuletzt bearbeitet:
Hey danke das funktioniert super!

Nur gibt der Compiler ne Warnung raus, da die request.getRealPath(String); veraltet ist, also hab ich in der Doku geschaut und folgendes herausgefunden:

Java:
        out.println(this.getServletContext().getRealPath(request.getContextPath()));

Dies löst jetzt mein Problem :) Danke

Lg, Yanick
 

Neue Beiträge

Zurück