Xindice:無料で使えるXMLデータベース(3)

サーブレットからのXMLデータベース検索


XMLの利用が広まるとともに、XMLデータベースに対する注目も集まりつつあります。本連載では、オープンソース・ソフトウェアとして公開されているXindiceを利用したネイティブXMLデータベースの実践を通して、XMLデータベースの利用方法を解説していきます。

野畠英明
ヒューレット・パッカード・ソリューションデリバリ(株)
2002/8/3



3-1. サーブレットからXindiceを呼び出す

 今回は、前回「JavaアプリケーションによるXMLデータベース検索」に引き続き、JavaからXindiceに格納されたデータをXPathで検索して利用する方法を紹介します。最初に、サーブレットを使った例を紹介し、次にインデックスの使い方を見ていきます。

サーブレット環境の準備

 サーブレットを動かすためにTomcatの導入とWebアプリケーションの準備、そしてサンプルサーブレットの解説、という順で説明していきます。簡単にいうとTomcatは、Webサーバ機能を持ったサーブレットエンジンです。これを導入するだけで、WebサーバとJavaによるサーブレットの実行環境が整います。今回の目的は、このサーブレットで作ったWebアプリケーションからXindiceを呼び出してみる、ということになります。

1. Tomcatの導入

 サーブレットの実行環境となるTomcatの導入方法を簡単に説明しておきます。すでに環境がある方はここを飛ばしていただいて結構です。また、ここでは最低限の説明しかしませんので、Tomcatについての詳しい設定や使い方は、下記の記事などを参考にしてください。

XMLサーバ/Cocoon自由自在! 第1回 Cocoonをセットアップしよう
Tomcatを使う「JSPプログラミング」 第2回 JSPの実行環境を整える

2. Tomcatの入手

 最初に、事前にJavaがインストールされていること、環境変数“JAVA_HOME”が設定されていることを確認します。Tomcatのバイナリ版をダウンロードします。ここでは、次のURLから最新の安定版4.0.4のバイナリをダウンロードして使うことにします。

http://jakarta.apache.org/builds/jakarta-tomcat-4.0/release/v4.0.4/

3. Tomcatのインストールとスタート

 ダウンロードしたら、Tomcatを適当なディレクトリに解凍します。そして、環境変数“CATALINA_HOME”を設定します。

編注:以下のリストでは、入力するコマンドが分かりやすいようにエンターキーを押下する位置に記号を記しました。

Windows
C:\> set CATALINA_HOME=<インストールディレクトリ>
UNIX系(Bシェル)
$ CATALINA_HOME=<インストールディレクトリ>; export CATALINA_HOME

4. Tomcatを起動

Windows
C:\> cd
%CATALINA_HOME%\bin%CATALINA_HOME%\bin> startup
UNIX系(Bシェル)
$ cd $CATALINA_HOME/bin
$ ./startup.sh

 Webブラウザから「http://localhost:8080/」にアクセスすると、Tomcatのデフォルトページが表示されます。デフォルトでは8080番ポートを使います。もし、すでに8080番ポートが使われている場合は設定を変えてください。うまくTomcatのページが表示されたら正しく動作していると考えてよいでしょう。

 Tomcatを停止する場合は次のようにします。

Windows
%CATALINA_HOME%\bin> shutdown
UNIX系(Bシェル)
$ ./shutdown.sh

Webアプリケーションの準備

 Tomcatのホームディレクトリ下にwepappsというディレクトリがあります。今回は、ここにXindiceSampleというディレクトリを作って、その中にサーブレットを格納することにします。通常は、WARファイルを作って、それを配置したりしますが、簡単のために直接ファイルを配置する方法を取ります。

 XindiceSampleは下記のような構成になります。

XindiceSample/
 └WEB-INF/
   ├classes/ ………サーブレットのクラスファイルを置く
   └lib/ ……………Xindiceのライブラリを置く

 上記のディレクトリ構成を作るために次の手順を実行してください。

Windows
C:\> cd %CATALINA_HOME%
%CATALINA_HOME%> cd webapps
%CATALINA_HOME%> mkdir XindiceSample
%CATALINA_HOME%> cd XindiceSample
%CATALINA_HOME%> mkdir WEB-INF
%CATALINA_HOME%> cd WEB-INF
%CATALINA_HOME%> mkdir classes
%CATALINA_HOME%> mkdir libn
UNIX系(Bシェル)
$ cd $CATALINA_HOME
$ cd webapps
$ mkdir XindiceSample
$ cd XindiceSample
$ mkdir WEB-INF
$ cd WEB-INF
$ mkdir classes lib

 ディレクトリを作成したら、libディレクトリに次のJARファイルをXindiceのホームディレクトリ下のjava/libからコピーしてください。これらはXindiceのライブラリです。

openorb-1.2.0.jar
xalan-2.0.1.jar
xerces-1.4.3.jar
xindice.jar
xmldb.jar

 以上でTomcatの準備は完了です。

5/9

Index
Xindice:無料で使えるXMLデータベース
  Xindiceをインストールする(Windows/UNIX)
・Javaで作られたXindice
・ネイティブXMLデータベースの特徴
・Xindiceの特徴
・Xindiceをインストールする
  XMLデータベースの作成と基本的な検索
・起動と停止
・コマンドラインからXindiceを利用する
・コレクションとドキュメント
・では、検索してみよう
・Xindiceの主なコマンド一覧
  Javaプログラムによる検索の手順
・検索用APIの使い方
  検索サンプルアプリケーションの実際
・例外
・XPath
・Xindiceで検索するサンプルアプリケーション
・ネームスペースを利用しない例
・ネームスペースを利用する例
サーブレットからXindiceを呼び出す
・サーブレット環境の準備
・Webアプリケーションの準備
  Xindiceを呼び出すサンプルサーブレット
・XPath式の結果をXML文書として返す
・結果をXSLTでHTMLに変換する
・変換のためのXSLTは別ファイル
  インデックスで高速化
・インデックス管理コマンド
・インデックスの有無によるスピード比較
・測定結果
  XUpdate言語の使い方
・現在ドラフト中のXUpdate
・ノードの挿入・追加
・ノードの更新
ノードの削除
・ノード名変更
  Javaアプリケーションから更新・削除を実行する
・更新用APIの使い方
・サンプルアプリケーション
・実行準備


XML & SOA フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

HTML5+UX 記事ランキング

本日月間