SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

Javaで軽快に使える「軽量フレームワーク」特集

Javaで軽快に使える「軽量フレームワーク」特集
~小さなライブラリ1つで動くStripes Framework(2)

第18回

レイアウトを使用する

 では、作成したdefault.jspレイアウトを使ったWebページを作成してみましょう。先ほどのhelo.jspをそのまま書き換えてもかまいません。以下のように記述をしてください。

<%@ page language="java" contentType="text/html; charset=sjis"
    pageEncoding="sjis"%>
<%@ taglib prefix="stripes"
    uri="http://stripes.sourceforge.net/stripes.tld"%>

<stripes:layout-render name="/layout/default.jsp">
  <stripes:layout-component name="html_head">
    <title>Helo Page</title>
  </stripes:layout-component>
  <stripes:layout-component name="contents">
  ※これは、レイアウトを使ったページの表示です。
  </stripes:layout-component>
</stripes:layout-render>
完成したdefault.jspを使ってページを表示する。表示する内容をコンポーネントで記述すると、このようにレイアウトされた状態でページが表示される
完成したdefault.jspを使ってページを表示する。表示する内容をコンポーネントで記述すると、このようにレイアウトされた状態でページが表示される

 アクセスしてみると、ヘッダーとフッターがつけられ、スタイルシートが設定された状態でページが表示されます。ページタイトルやコンテンツもきちんと表示されているはずです。

 ここでは、<stripes:layout-render>というタグが用意されていますが、これがレイアウトを使って表示する内容になります。name属性で、使用するレイアウトファイルを指定していることが分かります。

 このタグ内では、<stripes:layout-component>タグを使って表示するレイアウトコンポーネントを定義します。ここでは、name="html_head"とname="contents"の2つのコンポーネントが記述されています。先ほどのdefault.jspで、同名の<stripes:layout-component>タグが用意されていたのを思い出してください。

 このように、<stripes:layout-render>側で<stripes:layout-component>タグを定義すると、ロードしたレイアウトにある同名の<stripes:layout-component>タグ部分にその内容がはめ込まれ、表示されるようになります。ここではヘッダーとコンテンツの2つを用意していますが、もちろんいくつのコンポーネントを用意してもかまいません。コンポーネントをいくつも組み合わせることで、かなり複雑なレイアウトも作成可能となることが分かるでしょう。

まとめ

 今回は、Webページの表示に関する機能を中心に解説を行いました。とりあえず、Stripesに用意されている表示用の独自タグを使えるようにするだけでも、Stripesがどういう働きをするかわかってきます。Stripesでは、表示用の独自タグがかなり充実しています。ここで紹介したほかにも、<stripes:link>や<stripes:image>といったリンクやイメージ用タグといったものなど、さまざまなものが用意されています。

 Stripesの表示用のタグを駆使すれば、ビューの部分をきれいに切り分けるだけでなく、必要に応じてコントローラー側と連携させることができるようになります。これだけでも、Stripesを導入するメリットは十分あるのではないでしょうか。

この記事は参考になりましたか?

連載通知を行うには会員登録(無料)が必要です。
既に会員の方はを行ってください。
Javaで軽快に使える「軽量フレームワーク」特集連載記事一覧

もっと読む

この記事の著者

掌田 津耶乃(ショウダ ツヤノ)

三文ライター&三流プログラマ。主にビギナーに向けたプログラミング関連の執筆を中心に活動している。※現在、入門ドキュメントサイト「libro」、カード型学習サイト「CARD.tuyano.com」を公開...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/5250 2010/07/09 14:00

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー