リリース情報

5Java 共用ライブラリーへのアクセス (Linux)

5Java ストアード・プロシージャーまたはユーザー定義関数を実行するには、 5Linux ランタイム・リンカーが特定の Java 共用ライブラリーにアクセスできる必要があり、 5また、DB2 UDB がこのライブラリーと Java 仮想マシンの両方をロードできる必要があります。 5このロードを実行するプログラムは setuid 権限で実行されるため、/usr/lib ディレクトリー内の従属ライブラリーのみが検索されます。

5注:
このトピックは、リンクする必要のある基本的な共用ライブラリーについて述べています。 5作成して実行するアプリケーションによっては、さらに別の共用ライブラリーにリンクする必要がある場合もあります。 5

56Java 共用ライブラリーを指すシンボリック・リンクを /usr/lib ディレクトリー内に作成します。

5IBM Developer Kit 1.3 では、libjava.solibjvm.so5および libhpi.so へのシンボリック・リンクが必要です。 5シンボリック・リンクを作成するには、root として次のコマンドを実行します。

5   cd /usr/lib
5   ln -fs JAVAHOME/jre/bin/libjava.so .
5   ln -fs JAVAHOME/jre/bin/classic/libjvm.so .
5   ln -fs JAVAHOME/jre/bin/libhpi.so .

5ここで、JAVAHOME は SDK のベース・ディレクトリーを示します。 5DB2 UDB がこのライブラリーを検出できない場合に、 5Java ルーチンを実行しようとすると -4301 エラーが通知されて、ライブラリーが検出できなかったことを示すメッセージが管理通知ログに記録されます。

5注:
6これに代わる方法では、/usr/lib ディレクトリー内にリンクを作成しないで、 6Java 共用ライブラリーを /etc/ld.so.conf ファイルに追加します。 6この方法をとる場合、/etc/ld.so.conf ファイルの変更後に root として ldconfig コマンドを実行する必要があります。このようにしないと、 6ルーチンの呼び出しが完了しないので、処理は成功しません。 6一部のケースでは、この代替方法がやはり成功しないで、ルーチンが完了しないことがあります。 6代替方法が成功しない場合、上記の解説どおり、 6/usr/lib ディレクトリー内にリンクを作成してください。 6


[ ページのトップ | 前ページ | 次ページ | 目次 ]