倭マン's BLOG

くだらない日々の日記書いてます。 たまにプログラミング関連の記事書いてます。 書いてます。

Jaxen 苦闘 (2) :基本的な使用手順

今回は Jaxen の基本的な使用手順を見ていきます(記事一覧)。 dom4j では内部でこれらの処理を行っているので、特に知っている必要はないかも知れませんが。

使用手順


大まかな使用手順は以下の通り:

  1. org.jaxen.XPath オブジェクトを取得する
  2. (必要なら)名前空間コンテキストを設定する。
  3. 検索を実行する

これらの手順を施した結果得られた java.util.List オブジェクトなどのオブジェクトに対して必要な処理を行います。 各手順は次回以降に詳しく見ていきます。

サンプルコード


Jaxen のサイトの FAQ にあるサンプルコードを載せておきます。

import java.util.List;

import org.jaxen.XPath;
import org.jaxen.NamespaceContext;
import org.jaxen.dom4j.Dom4jXPath;

import org.dom4j.Document;

// 以下、メソッド内
Document doc = ... // org.dom4j.Document オブジェクト

// 1. XPath オブジェクトを取得する
XPath xpath = new Dom4jXPath("/foo:bar/@xlink:href");

// 2. (必要なら)名前空間コンテキストを設定する。
NamespaceContext nsContext = new SimpleNamespaceContext();
nsContext.addNamespace("pre", "http://www.foo.org/");
nsContext.addNamespace("xlink", "http://www.w3.org/1999/xlink");
xpath.setNamespaceContext(nsContext);

// 3. 検索を実行する
List result = xpath.selectNodes(doc);