では次に、Spring IDE 2.0を使ってXSD対応の構成ファイルを作成してみましょう。Spring IDE 2.0をインストール済みのEclipse(インストールの仕方は前回の記事を参照してください)で[ファイル(F)]→[新規(N)]→[その他(O)]を選択して、新規ファイル作成のウィザード選択ダイアログ(図1)を開いてください。
ダイアログ上のツリーから[Spring]→[Spring Bean Definition」を選択したうえで、新しいSpringの構成ファイル名を入力し、[次へ >(N)]ボタンをクリックして、ウィザードを進めます。
ここで[次へ >(N)]ボタンではなく[終了(E)]ボタンをクリックすることで、Spring 2.0のXSD対応構成ファイルの初期状態の内容が記述されたファイル(リスト1)が出来上がります。ネームスペースの追加が必要ないときは、この初期状態のファイルを利用しても構いません。
リスト1 Spring構成ファイルの初期状態 |
<?xml version="1.0" encoding="UTF-8"?> |
次に表示されるウィザード画面は[XSDネームスペース]を選択する画面(図2)です。ここで選択するネームスペースが「モジュール化されたタグ定義の集合」といえます。このXSDを読み込むことで、Spring 2.0で提供されている新しい書式を利用できます。
サンプルとして、リストの中から[util]のチェックボックスにチェックすることにします。
構成ファイルセットを使っている場合は、[次へ >(N)]ボタンを押すことで、新しい構成ファイルをどの構成ファイルセットに含めるかを指定できます。このサンプルでは構成ファイルセットは利用しないので、[終了(F)]ボタンを押します。
各ネームスペースの概要は以下のとおりです。
NameSpace | 概要 |
---|---|
util | 共通のユーティリティとして利用できるタグを定義している。例えば、コレクションを設定したり、定数を参照したりといったタグがある |
aop | Spring AOPのすべての設定を処理するタグを含むネームスペース。これには、SpringのプロキシベースAOPフレームワークや、SpringとAspectJとの統合AOPフレームワークが含まれる |
tx | Springの包括的なトランザクション管理のための設定を処理するタグを含んでいる |
jee | 以前はJ2EEと呼ばれたJava EE(Java Enterprise Edition)とともにSpringを利用する際に発生する問題を処理する。例えば、JNDIオブジェクトやEJBを参照するような場合 |
lang | JRubyやGroovyといった動的言語で記述されたBeanをSpringで管理する際に利用できるタグを含んでいる |
flow | Spring Web Flowの設定を簡易に行うためのタグを提供するネームスペース。Spring Web Flowは、Flowと呼ばれる再利用可能なコントローラーモジュールを使ってUIの遷移制御などを行うプレゼンテーション層フレームワーク |
osgi | SpringとOSGiの統合を補助するタグが含まれている。OSGi(Open Services Gateway initiative)とは、遠隔から管理できるJavaベースのプラットフォームを定義する標準化団体 |
表2 Spring 2.0のXSDネームスペース一覧 |
上記の手順によって作成されるxmlファイルには以下(リスト2)のような内容が記述されます。「util」というXSDネームスペースを選択したことで、4〜9行目の記述が定義されています(太字がutilネームスペースの利用のための記述)。
リスト2 作成済みファイル内容 |
<?xml version="1.0" encoding="UTF-8"?> |
では、次にこれらのXSDネームスペースについて説明してゆきます。
XSDは、DTDと同じようにXMLファイルの構造を定義するものです。XSDによって定義された構造に従っていないXMLファイルが記述されている場合はエラーが発生します。
Spring IDE 2.0を使っている場合は、XMLファイルを保存したタイミングでスキーマに対するチェックが行われるため、エラーが素早く発見できスピーディーな開発が行えます。XSDでは、ネームスペースごとに分類されたタグを組み込んで利用できます。
新しいXSD方式の記述を試してみるには、このサンプルで紹介しているutilネームスペースのタグを使うのがいいでしょう。このutilネームスペースに用意されたタグは「定数」や「コレクションフレームワーク」といった、どのようなアプリケーションでも共通でよく使う設定を簡単に記述できるようにします。以下(表3)にutilネームスペースに含まれるタグの概要を記載します。
タグ | 概要 |
---|---|
<util:constant/> | 定数を構成ファイルのBean定義で簡易に扱うためのタグ |
<util:property-path/> | 構成ファイルに定義済みのBeanプロパティーへの参照を簡易に定義するためのタグ |
<util:properties/> | プロパティーファイルから簡単に値を取得するタグ |
<util:list/> | コレクションフレームワークを簡単に利用するためのタグ |
<util:map/> | |
<util:set/> | |
表3 utilネームスペースに含まれるタグ |
次ページではutilネームスペースのタグについて1つ1つ解説していきます。
Copyright © ITmedia, Inc. All Rights Reserved.