私の考えは、ユーザーが次のようにコンテキストパスの外にアップロードした画像を保存することです:
D:\somefolder\myWeb\web-app\
D:\somefolder\imagesOutsideContextPath\
そのためのコードは次のとおりです (ローカルで動作):
String path = servletContext.getRealPath("/");
String parentFolder = new File(path).getParentFile().getParent();
String imagesFolder = parentFolder + "\\imagesOutsideContextPath";
別のアイデア (これがサーバーで機能しない場合) は、@HoàngLong が提案したように、現在のユーザーのホーム フォルダーに画像を保存することです。
しかし、ビューから画像を読み込むことができません。公式ドキュメントのこの記事は、その目的には有効ではないと思います。次のコードは何もロードしません:
<img src="D:\\somefolder\\imagesOutsideContextPath\\bestImageEver.jpg" alt="if I don't see this message, I'll be happier">
これらの画像をロードするために URL パスの代わりに実際のパスを使用するにはどうすればよいですか?