Javaインターフェイス

本インターフェイスは、AH Formatter V7.0 をJavaから利用するインターフェイスを提供します。 Java VM について を参照してください。

JavaインターフェイスはJNI(JavaNativeInterface)を使用して作られています。

注意: Windows版(32ビット版)を Windows x64 Edition にインストールすることができますが、その場合にJavaインターフェイスを利用するときは、32ビット版の JDK を使用してください。

ライブラリファイル

以下のライブラリファイルが [Install directory] または [Install directory]/​lib に含まれています。

ライブラリファイル 内容 場所
XfoJavaCtl.jarJavaアーカイバ [Install directory]/​lib
XfoJavaCtl70.dllWindows用 Javaインターフェイス [Install directory]
libXfoJavaCtl70.soLinux用 Javaインターフェイス [Install directory]/​lib
libXfoJavaCtl70.jnilibMacintosh用 Javaインターフェイス [Install directory]/​lib

Javaインターフェイスを実行するには、Javaを実行するディレクトリと[Install directory]/​lib/​XfoJavaCtl.jar が環境変数 CLASSPATH に含まれていなければなりません。 また、JNI(JavaNativeInterface)を使用していることからWindows版では [Install directory] が環境変数 PATH に含まれていなければなりません。非Windowsの環境では[Install directory]/​libが Linux版では環境変数 LD_LIBRARY_PATH に 、Macintosh 64ビット版では java.library.path に 含まれていなければなりません。 必要な環境変数については、環境変数を参照してください。

Windows版の場合。

> set CLASSPATH=[Install directory]/lib/XfoJavaCtl.jar;%CLASSPATH% > set PATH=[Install directory];%PATH%

Linux版の場合。

$ CLASSPATH=[Install directory]/lib/XfoJavaCtl.jar:${CLASSPATH} $ export CLASSPATH $ LD_LIBRARY_PATH=[Install directory]/lib:${LD_LIBRARY_PATH} $ export LD_LIBRARY_PATH

Java VM について

AH Formatter V7.0 の Javaインターフェイスは、Windows版では J2SE5.0、Linux版では Java SE 8、Macintosh版では Java SE 6 を使ってビルドされています。

アプリケーションサーバにおける使用について

Tomcatなどのアプリケーションサーバにおいて本インターフェイスを使用する場合、XfoJavaCtl.jarをウェブアプリケーションのWEB-INF/libに置かないようにしてください。
JavaVMの仕様によりJNIのネイティブライブラリは複数のクラスローダから読み込めないようになっているため、各ウェブアプリケーションディレクトリにXfoJavaCtl.jarを置くと複数のウェブアプリケーションから使用することができなくなります。これを防ぐにはシステムクラスローダなどロードが一度だけ行われるクラスローダで読み込ませるように設定してください。

サンプルプログラムの実行

[Install directory]/​samples/​java は簡単なサンプルプログラムをいくつか含んでいます。

これらのサンプルプログラムを実行するには、次のようにします。このとき、[Install directory]/​samples/​java を CLASSPATH に含めておきます。

> cd [Install directory]/samples/java > javac sample.java > java sample sample.fo sample.pdf

なお、Macintosh 64ビット版では、以下のように java コマンドに対して java.library.path の設定を追加する必要があります。

> java -Djava.library.path="[Install directory]/lib" sample sample.fo sample.pdf

API仕様

API仕様は、Javadocによるドキュメントを参照してください。