Der webapp-relative Pfad ist /STUFF/read.txt
.
Sie könnten ServletContext#getRealPath()
, um einen relativen Webpfad in einen absoluten lokalen Dateisystempfad zu konvertieren. Auf diese Weise können Sie es weiter in den üblichen java.io
stuff verwenden, die eigentlich nichts über den Web-Kontext wissen, in dem es läuft. ZB
Dies funktioniert jedoch nicht, wenn der Server so konfiguriert ist, dass der WAR im Speicher statt auf dem Datenträger erweitert wird. Die Verwendung von getRealPath()
hat immer diese Einschränkung und wird in realen Anwendungen nicht empfohlen. Wenn Sie letztendlich nur einen InputStream
dieser Datei benötigen, für den Sie wahrscheinlich FileInputStream
verwendet hätten, verwenden Sie besser ServletContext#getResourceAsStream()
, um es direkt als InputStream
: