なるほど..ありがとう。
これが何が起こるかです(IMHO :)):
JSP の処理中に、変数は何らかの静的パスに解決され、ブラウザーに渡されます。
ブラウズはここで静的コンテンツをレンダリングします。パスを確認すると、サーバーに追加の http 要求を発行しますが、サーバーが画像を静的に見つけられないようです。これは、いったん配備されると、戦争の物理構造を変更できないという事実によるものです。展開されたディレクトリではなく、WAR のファイルベースの表現で作業するのと同じように考えてください。
今何ができる?
バイナリ イメージを取得する要求を受け取り、それを返すリソース サーブレットを作成してみてください。
このサーブレットを web.xml に /resource などのパスで登録し、get パラメータ imgName を取得します。
例
<img src="resource?imageName=${imageNameYouWant}" />
img src タグの静的コンテンツの代わりに jsp で、画像をパラメーターとして使用してサーブレットを呼び出します。ブラウザがこれを確認すると、以前と同様に通常のリクエストを発行しますが、今回はリソース サーブレットによって処理され、画像が表示されます。
私が試みるもう1つのことは、画像フォルダーをwebappディレクトリの外に移動することです。このディレクトリは Web コンテナーによって自動的に追跡されますが、そこに画像を保存する理由はありません。
あなたはこのようにします:
次のようなディレクトリを作成します: /myapp/images
サーバー側でいくつかのコンポーネントを作成する必要があります。しかし今回は、Web サーバー側 (カスタム サーブレットなし) でいくつかの構成を作成することでおそらく実行できます。最初のアプローチを使用するときにこれが機能するかどうかはわかりません...
上で説明したように、サーバー上の JSP ポイント内。
それはエンタープライズ向けの重要なアプリケーションであり、データベースに画像を保存することと組み合わせて最初のアプローチをお勧めしますが、別の話です:)
お役に立てれば