2013年6月13日木曜日

CSS・JavaScriptを最新バージョンに強制的に反映させる方法

Web業務アプリケーションなどを開発していると、CSS・JavaScriptの改修を行うことが多いかと思います。
その時、CSS・JavaScriptのキャッシュが効いていることにより、最新のバージョンが反映されないことがあります。
反映されないことにより、レイアウト崩れなどが発生し、クライアントからお怒りの電話が・・・なんてことも。
そんな時、クライアントにキャッシュを削除してください~ってのは、ちょっと面倒ですよね。

そこで、 JSPを用いた、CSS・JavaScriptを最新バージョンに強制的に反映させる方法のメモをここに記載したいと思います。

前提条件

  • Servlet3.0
  • JSP1.2

対策概要

CSS・JavaScriptを強制的に反映させる方法は、URLクエリパラメータを各ファイルを読み込むときに指定することにより、別ファイルとして認識させる。
そうすることにより、パラメータ部分を変更すれば常に最新の物が反映できるという方法であります。

Google Map・Yahoo地図の拡大・縮小の時のアニメーションなどで使われています。
ここではパラメータ部分をweb.xmlで設定した値をURLクエリパラメータに反映させる方法を記載します。

web.xmlの編集

URLクエリパラメータに読み込ませる値を設定します。
以下のコードをweb.xmlに記載します。

  <context-param>
    <param-name>version</param-name>
    <param-value>1.1</param-value>
  </context-param>
こうすることによりコンテキスト単位で値を保存できます。

JSPの記載

EL式の暗黙オブジェクト「initParam」を使用します。
CSS
<link rel="stylesheet" type="text/css" href="保存パス?${initParam.version}" />
JavaScript
<script type="text/javascript" src="保存パス?${initParam.version}" />
これによりweb.xmlを修正すれば最新の情報をクライアントに強制的に送ることが出来ます。

参考文献

Written By : // 9:50
Category:

0 コメント:

コメントを投稿

 

About

このブログは筆者の備忘録として色々記載しています。

Blog Archive

Powered by Blogger.