コンピュータクワガタ

かっぱのかっぱによるコンピュータ関連のサイトです

JSPとELを見直そう No. 1 ひな形

世間一般にはJSPは面倒だとか、動かさないとどういう表示になるのかわからないとかいろいろ言われていまして、確かにそのとおりなのですが、Java EE5、6、7と進化する中でJSPやELも進化しています。

そこで、今回からネタが尽きるまでJSPとELの機能について紹介していきます。

今回は雛形となる部分を紹介します。

web.xmlに<jsp-config>を設定しておくことでJSPの共通部分を設定することができます。

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:jsp="http://java.sun.com/xml/ns/javaee/jsp"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version="3.1">
 <jsp-config>
  <jsp-property-group>
   <url-pattern>*.jsp</url-pattern>
   <el-ignored>false</el-ignored>
   <page-encoding>utf-8</page-encoding>
   <scripting-invalid>true</scripting-invalid>
   <include-prelude>/WEB-INF/jsp/common/common.jsp</include-prelude>
  </jsp-property-group>
 </jsp-config>
</web-app>

url-patternは設定を適用するJSPを指定します。

el-ignoreはELを使用不可にするかどうかを指定します。使用する場合にはfalseを指定します。

scripting-invalidではスクリプトレットの使用の可否を指定します。使用する場合にはfalseを指定します。

include-preludeでは、url-patternに合致するJSPの先頭にincludeするJSPを指定します。共通の設定がある場合に便利に使用できます。

jsp-configには他にも設定はありますが、以降の回で紹介したいと思います。

今回の例でinclude-preludeするJSPは次のとおりです。

<%@page language="java"  pageEncoding="utf-8" %><%--
--%><%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %><%--
--%><%@taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %><%--
--%>

先頭のJSPなのでpageEncodingの指定と、ほぼ必須となるJSTLの読み込みをしています。これだけでも毎回同じものを複写して作成したり、同じincludeを書いたりする手間から開放されると思います。

最後に、サンプルのJSPです。src/main/webapp以下に置いて直接参照できるようにしておきます。

<%@page contentType="text/html; charset=utf-8" %><%--
--%><!DOCTYPE html>
<html lang="ja">
 <head>
  <meta charset="utf-8">
  <title>JSP</title>
 </head>
 <body>
こんにちはJSP<br>
JSPとELを見直そう
 </body>
</html>

ソースは https://github.com/kuwalab/JSP にあります。

まとめ http://kuwalab.hatenablog.jp/entry/JSP
最初 http://kuwalab.hatenablog.jp/entry/JSP/01
前回 http://kuwalab.hatenablog.jp/entry/JSP/01
次回 http://kuwalab.hatenablog.jp/entry/JSP/02