Release-Informationen

5Zugriff auf gemeinsam benutzte Java-Bibliotheken (Linux)

5Zum Ausführen von gespeicherten Java-Prozeduren oder benutzerdefinierten 5Java-Funktionen muss der Linux-Laufzeitlinker in der Lage sein, auf bestimmte 5gemeinsam benutzte Java-Bibliotheken zuzugreifen, und DB2 UDB muss in der Lage 5sein, diese Bibliotheken wie auch die Java Virtual Machine zu laden. Da 5das Programm, das diese Ladeoperation durchführt, mit setuid-Zugriffsrechten 5ausgeführt wird, sucht es nur im Verzeichnis /usr/lib nach den 5abhängigen Bibliotheken.

5Anmerkung:
In diesem Abschnitt werden wichtige gemeinsam benutzte Bibliotheken 5angegeben, zu denen Sie eine Verbindung herstellen müssen. Je nach 5Anwendung, die Sie erzeugen und ausführen, müssen Sie möglicherweise eine 5Verbindung mit zusätzlichen gemeinsam benutzten Bibliotheken 5herstellen. 5

56Erstellen Sie symbolische Verknüpfungen im Verzeichnis 6/usr/lib, die auf die gemeinsam genutzten Java-Bibliotheken 6verweisen.

5Für IBM Developer Kit 1.3 benötigen Sie symbolische Verknüpfungen zu 5libjava.so, libjvm.so und 5libhpi.so. Sie können die symbolischen Verknüpfungen 5erstellen, indem Sie die folgenden Befehle als Root ausführen:

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 .

5Dabei ist JAVAHOME das Basisverzeichnis für das Developer 5Kit. Wenn DB2 UDB diese Bibliotheken nicht finden kann, erhalten Sie 5den Fehler -4301, wenn Sie versuchen, eine Java-Routine auszuführen. 5Außerdem sind Nachrichten über nicht gefundene Bibliotheken im Protokoll mit 5Benachrichtigungen für die Systemverwaltung vorhanden.

5Anmerkung:
6Eine Alternative besteht darin, die gemeinsam benutzten 6Java-Bibliotheken der Datei /etc/ld.so.conf 6hinzuzufügen und keine Verknüpfungen im Verzeichnis /usr/lib zu 6erstellen. Wenn Sie so vorgehen, müssen Sie den Befehl 6ldconfig nach Änderung der Datei 6/etc/ld.so.conf als Root ausführen. Ansonsten 6schlägt diese Maßnahme fehl, da der Aufruf an die Routine nicht beendet werden 6kann. Diese alternative Methode funktioniert jedoch möglicherweise für 6bestimmte Exemplare nicht, so dass die Routine ebenfalls nicht beendet 6wird. Wenn die alternative Methode nicht funktioniert, erstellen Sie 6die Verknüpfungen wie oben beschrieben im Verzeichnis 6/usr/lib. 6


[ Seitenanfang | Vorherige Seite | Nächste Seite | Inhaltsverzeichnis ]