XML文書をCSV形式に変換してほしいという相談を受けました。そのXML文書は構造が複雑でExcelで開いても手動による修正がかなり必要で作業ミスのリスクがつきまといます。そこでXML文書を変換するためのソフトウェア「XSLTプロセッサ」を探すことにしました。
XSLTプロセッサとはXSLT(XSL Transformation)を利用してXML文書を他の文書形式(テキストやHTML)に変換するためのソフトウェアです。
Apache Xalanは Apache Software Foundationが開発しているXSLTプロセッサです。
オープンソースであるということと、最新版のリリースが2023年ということでまずます安全だろうという理由で選択しました。
今回はJavaで動作させるためのXalan-JパッケージをWindows 11のPCにインストールしてみます。
パッケージのダウンロード
(1) 以下のサイトから Xalan-J の最新版パッケージ(xalan-j_2_7_3-bin.zip)をダウンロードします。
ライブラリの配置(JRE8の場合)
(1) ダウンロードしたパッケージを展開します。
(2) 展開して出来たフォルダーのJARファイル(serializer.jar、xalan.jar、xerceslmpl.jar、xml-apis.jar)を拡張ライブラリ保管ディレクトリ(C:\Program Files\Java\jre-1.8\lib\ext)にコピーします。
ライブラリの配置(OpenJDK21の場合)
JDKではライブラリの配置が若干面倒です。lib\extディレクトリが存在しないので環境変数CLASSPATHの設定が必要になります。
(1) 展開して出来たフォルダーのJARファイル(serializer.jar、xalan.jar、xerceslmpl.jar、xml-apis.jar)をライブラリディレクトリ(C:\jdk-21.0\lib)にコピーします。ちなみにlibの下に無理やりextフォルダを作成してjarを配置してもJava実行時にエラーを吐いてしまいます。
(2) [設定] – [システム] – [バージョン情報] – [システムの詳細設定] からシステムのプロパティを開きます。
(3) 環境変数の設定を開きます。
(4) システム変数に [CLASSPATH] を新規作成して、xalan.jarのPATH(%JAVA_HOME%\lib\xalan.jar)を登録します。PATHを通すJARファイルはxalan.jarだけでOKです。CLASSPATHがすでに存在する場合は末尾にPATHを追記してください。
動作の確認
(1) ターミナルからjavaコマンド(java org.apache.xalan.xslt.Process)でXalanライブラリを呼び出します。オプションについての説明文が表示されればOKです。