Dateiupload: WebContent Ordner Pfad?

Status
Nicht offen für weitere Antworten.

ChristophMA

Mitglied
Hallo!

Ich habe nach der Anleitung von Link einen Dateiupload realisiert.
Die JSP schickt die Datei an einen Actionhandler (Struts wird verwendet). Die Datei kann auch überall hingeschrieben werden.

Mein Problem ist die Datei in den Ordner WebContent/bilder_upload speichern möchte.
Das geht auch, wenn ich hier den Pfad absolut angeben:
Java:
new File("C:\\TomCat 5.5\\webapps\\usw...",fileName))]
Das möchte ich allerdings nicht, da das Projekt auf unterschiedlichen Rechnern laufen muss. Sprich der Pfad muss dynamisch sein.

Also meine Frage:
Wie komme ich in der Action Klasse über irgendwelche Umgebungsvariablen an den Pfad?
Java:
getServletContext().getRealPath("WebContent/bilder_upload")
liefert nicht das gewünschte Ergebnis, sondern einen Temporären Pfad:
C:\Tomcat 5.5\webapps\ROOT\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\Smart\

Weiß das jemand?
Grüße, Christoph
 
Zuletzt bearbeitet:

Noctarius

Top Contributor
Es liefert dir den temporären Pfad, weil dies aktuell dein Context ist. Vermutlich hast du das Projekt innerhalb von Eclipse im Tomcat-Connector laufen.

Wenn du das Projekt bundlest und im Tomcat deployest, dann stimmt auch dein Contextpfad.
 

ChristophMA

Mitglied
danke für die Antwort!

Vermutlich hast du das Projekt innerhalb von Eclipse im Tomcat-Connector laufen.
stimmt. :)

so kann ich das Programm auch testen, funktioniert also alles. Hat mich am Anfang nur sehr verschickt...
Wenn das ganze Projekt irgendwann produktiviert wird und auf irgend einem Server irgendwo läuft, dann ist mein Programm durch die Verwendung der getRealPath Methode darauf vorbereitet, oder?

grüße christoph
 

Noctarius

Top Contributor
Genau das. getRealPath gibt den Pfad immer ausgehend vom aktuellen Contextpath aus. In Eclipse ist dieser halt anders als in einer Liveumgebung.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen

Ähnliche Java Themen

Neue Themen


Oben