Tomcat7でJSTL 1.2使う

J2EE標準となったJSTL(Java Standard Tag library)だが、標準とはいっても何もしないで利用できるというわけではない。利用にはjstl.jarのインストール(配備)が必要。

具体的にはJSTLを利用したいコンテキストのWEB-INF/lib/に以下の2つのjarファイルを置いておけばOK。片方だけだとNoClassDefFoundErrorが出てしまうので注意。

javax.servlet.jsp.jstl-api-1.2.1.jar
javax.servlet.jsp.jstl-1.2.1.jar

配置せずにJSTLを使おうとした場合、以下のような何とも分かりづらいエラーメッセージが出てしまう。

「org.apache.jasper.JasperException: 絶対URI: http://java.sun.com/jsp/jstl/core はweb.xmlとこのアプリケーションを配備したJARファイルのどちらかでも解決できません」

Standardというなら標準装備してほしいものだが、そうなっていないので
他のライブラリと同じくmavenなどを使って依存性解決させるのが良いだろう。

カテゴリー: Tomcat タグ: , パーマリンク

コメントを残す

メールアドレスが公開されることはありません。

Time limit is exhausted. Please reload the CAPTCHA.