pljava kann nicht installiert werden

Hallo Forum,
unter winxp pro, postgres8.2.5.1 wird die pl/java Unterstützung bei der Installation angeboten. Wird diese angekreuzt, so kommt es während der Installation zu der Meldung: pljava.dll konnte nicht registriert werden. Die Unterstützung ist nicht aktiv, obwohl die Dateien kopiert wurden.

Versuche ich nun das SQL-Script install.sql manuell in die Datenbank zu spielen mit pg-admin tauchen dort folgende Fehler auf:
“ERROR: could not load library “C:/Programme/PostgreSQL/8.2/lib/pljava.dll”: unknown error 126
SQL Status:58P01”
Diese Meldung tritt auf, wenn folgender Befehl ausgeführt werden soll:
“CREATE FUNCTION sqlj.java_call_handler()
RETURNS language_handler AS ‘pljava’
LANGUAGE C;”

Jeder Tipp wäre toll, da die java-Unterstüztung von einer Applikation unbedingt benötigt wird
Beste Grüße
Andreas

Hallo Andreas,

ist hier ein alt bekanntes Thema und PostgreSQL ist auch nicht schuld. Ich kann es auch nicht nachvollziehen!

Unter welchem User hast Du installiert? Bekanntlich darf das Registrieren von DLL’s nur der Administrator vornehmen!

Halt Dich bei der Neu-Installation an die Beiträge Entfernen (De-Installation) von PostgreSQL unter Windows und Installation von PostgreSQL unter Windows. Und hier gibt es allgemein zu dem Thema auch noch einen Beitrag: Installation von PostgreSQL unter Windows scheitert oder funktioniert nicht.



Den Zugriff auf die Datenbank oder als Programming Language?



mfg

fristo

Hallo Fristo,
habe unter einem Admin-Account installiert. Sollte also nicht an den Zugriffsrechten liegen. Die Anleitungen habe ich alle schon mehrmals durchgeforstet. Die gehen aber nicht auf das eingentliche Problem ein. Die Installation als solche funktioniert ja, nur eben nicht pljava.dll. Die Datenbank läuft, ohne Unterstützung von pl/java.
Ist es wichtig, daß pljava.dll im Pfad gefunden wird?
Die Applikation benutzt die Programming Language. Beim Import der Datenbank treten Fehler auf, das kein Zugriff auf pljava.dll möglich ist. Danach fehlen Funktionen
mfg
Andreas

Hallo Andreas,

Ich kann Dir im Augenblick nicht weiter helfen, aber ich habe im englischen Forum einen Betrag gefunden, der das gleiche Problem beschreibt: installing pljava on windows xp.

Für PL/Java gibt es auch ein Wiki: PL/Java - Wiki. Die in der Installationbeschreibung: Windows Installation - PL/Java angegebenen Einträge in der “postgresql.conf” fehlen bei mir. Vielleicht ist das der Grund. Ich kann die Richtigkeit nicht überprüfen.

Was mir noch aufgefallen ist: Nach der beiliegenden Doku wird die Version 1.2 ausgeliefert. Die aktuelle Version lautet: 1.3.0 .

Dieses Tool könnte auch noch hilfreich sein: Dependency Walker.


Dies ist der erste Beitrag bezüglich PL/Java in diesem Forum. Es wäre gut wenn Du uns die gefundene Ursache mitteilen würdest. Das würde dann andere bei ähnlichen Problemen weiterhelfen.



mfg
fristo

Hallo Fristo,
danke für die guten Tipps.
Zuerst vorweg: das Problem ist noch nicht gelöst. Bin aber dabei allen Hinweisen nachzugehen.

  1. Die fehlenden Einträge in der postres.conf hatte ich vorher schon nachgetragen. Diese fehlten Anfangs bei mir auch
  2. DependecyWalker hat eine fehlende dll entdeckt. Diese habe ich aus dem Internet nachgeladen.
  3. Weitere Fehlermeldung in DependencyWalker: “Warning: At least one module has an unresolved import due to a missing export function in a delay-load dependent module.” Vielleicht behebt die neue Version das ja.

So weit. Werde jetzt mal das neueste pljava ausprobieren. Wenn es am Ende bei mir laufen sollte poste ich noch eine kurze Anleitung dazu, was ich alles machen mußte.
MFG
Andreas

Habe den DependencyWalker laufen lassen. Gleicher Fehler. Aber beim Start des install.sql kommt diesmal ein anderer Error

“ERROR: could not access file “pljava”: No such file or directory
SQL Status:58P01”

Wahrscheinlich stimmen irgend welche Pfade noch nicht. Habe jetzt nochmals alles kontrolliert, wie es im wiki steht + gegoogelt.

Alle Pfadangaben etc. sind eingetragen und stimmen.(Jedenfalls die mir bekannt sind) pljava ist eine Datei? Welche? Welche Abhängigkeit fehlt im noch?
mfg
Andreas

Bei mir klappt es mit dem Installieren von pljava, nachdem die PATH-Umgebungsvariable gesetzt ist, um die jvm.dll zu finden. Bei mir war also hinzuzufügen: ;C:\Programme\Java\jre1.6.0_07\bin\client\