• 締切済み

JSPと異なるディレクトリのファイルのinclude

相対パスで書かれている画像が含まれるHTMLファイルを、違うディレクトリに 置かれているJSPファイルからincludeした時に、画像が上手く表示されなく なってしまいます。これを上手く表示させる方法はありますでしょうか? 具体的な例を挙げて説明します。 [ディレクトリ構成] コンテキストパス--+--jsp-----index.jsp          |          +--html--+-index.html               |               +-fig1.png index.html内に <img src="fig1.png"> と表記 index.jsp内に <%@ include file="/html/index.html" %> あるいは <bean:include id="contents" page="/html/index.html" /> と表記 この場合 http://サーバ名/コンテキストパス/jsp/index.jsp にアクセスすると、fig1.pngは表示されません (/jspの下にないのですから当然といえば当然ですが)。 index.htmlファイルにはできるだけ手を加えたくありません。 このような条件で、fig1.pngを上手く表示させる方法はありますでしょうか?

みんなの回答

  • m_hagizo
  • ベストアンサー率65% (31/47)
回答No.1

インクルードしているHTMLに書いてある内容は、動的に変えるわけにはいかないので、『index.htmlを変えずに』というのは無理じゃないですかねぇ。 fig1.pngを、jspディレクトリの下にもコピー(またはシンボリックリンク?)しちゃうって手もありますけど・・・。(苦笑) コンテキストルートの下に、imageとかいうディレクトリを作って、画像関係は全部そこに突っ込んでおき、jspからでもhtmlからでも"/image/画像ファイル名"でアクセスするようにするとすっきりしますが、やはりindex.htmlには手を入れざるを得ません。

関連するQ&A