1. Dashboard
  2. Forum
    1. Unerledigte Themen
  3. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team-Mitglieder
    4. Trophäen
    5. Mitgliedersuche
  4. Tutorial Bereich
  • Anmelden
  • Registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Seiten
  • Forum
  • Lexikon
  • Erweiterte Suche
  1. Informatik Forum
  2. Webmaster & Internet
  3. Entwicklung

[APACHE][JAVA] Geht einfach nicht

  • Flowyes
  • 16. Dezember 2004 um 19:30
  • Unerledigt
  • Flowyes
    9
    Flowyes
    Mitglied
    Punkte
    750
    Beiträge
    116
    • 16. Dezember 2004 um 19:30
    • #1

    Ich bin echt verzweifelt. Wäre soo dankbar, wenn mir jemand helfen kann.

    Ich werde die PHP extensions für Java verwenden (also aus PHP Java verwenden) und habe einen Apache Server auf dem lokalen Rechner. Und ich brings seit mehr als 5 Stunden jetzt nicht zusammen. Ich kann Apache nicht so konfigurieren, dass PHP mit den java extensions (php_java.dll) arbeitet. OS: windows.

    Ich muss etwas unter php.ini verändern, das sich im Apache-Verzeichnis befindet. Ich kommentiere also extension=php_java.dll aus. Okay, dann gibts dort einbisschen weiter unten einen Teil, der mit [JAVA] beginnt. Die Einträge sind:

    java.class.path
    java.home
    java.library
    java.library.path

    Die setze ich auch alle richtig. Unter java.class.path hab ich z.B.
    c:\php\php-4.3.9-Win32\extensions\php_java.jar
    Dort gibt's auch tatsächlich die Datei php_java.jar.
    Apache neu starten erzeugt keine Fehlermeldungen und wenn ich phpinfo() aufrufe, dann seh ich einen Teil mit Java und diese obigen Parameter, die ich ins config-file eingetragen hab aufgelistet. Also müsste es funktionieren (in den diversesten Foren schafft es auch jeder nach diesem Schritt Java zum Laufen zu bringen) Nur ein kleiner Test:

    PHP
    <?php
    
      $systemInfo = new Java("java.lang.System");
      echo "Total seconds since January 1, 1970: 
      ".$systemInfo->currentTimeMillis();
    
      ?>


    ergibt die Fehlermeldung, cannot instantiate non-existing class. Offensichtlich wird Java nicht erkannt. Außerdem bringt dieser kurze, aber böse Code den ganzen Apache-Server zum Absturz, jedes Mal wenn ich es mit meinem Browser teste. Was mach ich falsch? Google hat schon lang ausgedient...

    The idea behind this technique is surprisingly simple: just go ahead and do whatever you want to without paying attention to what anybody else is doing. If there is a problem, worry about it later. (Many politicians use this algorithm, too) -- A. S. Tanenbaum, M. v. Steen, Distributed Systems

  • Florian
    4
    Florian
    Mitglied
    Punkte
    165
    Beiträge
    33
    • 17. Dezember 2004 um 01:59
    • #2

    Hmm, wenn du wirklich dieses Code-Beispiel verwendest, ist es klar, wieso es nicht funktioniert, einmal $sysInfo und dann $systemInfo kann nicht funktionieren... Ansonsten kann ich leider wenig helfen, kenne mich zu wenig mit Java in PHP aus.

  • Flowyes
    9
    Flowyes
    Mitglied
    Punkte
    750
    Beiträge
    116
    • 17. Dezember 2004 um 02:43
    • #3

    Ah!, danke, das ist ein Tippfehler gewesen, aber das Problem besteht natürlich weiterhin...

    The idea behind this technique is surprisingly simple: just go ahead and do whatever you want to without paying attention to what anybody else is doing. If there is a problem, worry about it later. (Many politicians use this algorithm, too) -- A. S. Tanenbaum, M. v. Steen, Distributed Systems

  • Filz
    9
    Filz
    Mitglied
    Punkte
    815
    Beiträge
    150
    • 17. Dezember 2004 um 02:51
    • #4

    ich schätze mal, du hast in deiner php.ini einfach die sechs Zeilen (wie in der Beschreibung) ans Ende angehängt?

    Zitat

    [Java]
    extension=php_java.dll
    java.class.path="C:/Programme/Netzwerk/PHP/extensions/php_java.jar"
    java.home="C:/Programme/Java/j2sdk1.4.2/jre/bin"
    java.library="C:/Programme/Java/j2sdk1.4.2/jre/bin/server/jvm.dll"
    java.library.path="C:/Programme/Netzwerk/PHP/extensions"

    Php.ini ist so geplant, dass du eigentlich nur auskommentieren musst, was du brauchst - kann also sein, dass es jetzt in deiner INI zwei Bereiche [Java] gibt, die Pfade stehen dann im zweiten Bereich und werden ignoriert.

    [edit] obwohl, nach genauerem Lesen von deinem Post - ups :)[/edit]

    Habs mal schnell ausprobiert, das würde genau deinen Fehler (Objekt kann nicht instanziiert werden, weil es die Klasse dazu nirgends gibt) erzeugen.

  • Flowyes
    9
    Flowyes
    Mitglied
    Punkte
    750
    Beiträge
    116
    • 17. Dezember 2004 um 03:17
    • #5

    Ich hab nicht ganz verstanden, wie du meinst, mit 2 Bereichen. Da ist ein Bereich, der mit [JAVA] anfängt, der ganz am Anfang noch kommentiert war. Ich hab diesen Teil auskommentiert, und gemäß meiner Verzeichnishierarchie modifiziert. Ich bin sogar von jdk1.5.1 auf jdk1.3.1 umgestiegen, weil ich irgendwo gelesen hab, dass es mit jdk > 1.3.x vielleicht Kompatibilitätsprobleme geben kann, aber nein. Der Fehler bleibt der gleiche...

    edit: das hatte ich noch geschrieben, bevor du editiert hast :)

    edit2: jetzt gehts!! ich geh stark davon aus, dass jdk1.5.1 die Probleme verursacht hat. Außerdem muss ich die paths unbedingt absolut angeben glaub ich und semicolons nicht vergessen (obwohl ich öfters gelesen hab, dass es anders auch geht). Na ja zumindest funktionierts jetzt mal. Trotz mysteriösen Fehlermeldungen wie "insecure options" oder so. Aber es steht im PHP-Manual sowieso, dass man diese java-extensions auf eigene Gefahr benutzen soll.
    Danke für eure Hilfe!

    The idea behind this technique is surprisingly simple: just go ahead and do whatever you want to without paying attention to what anybody else is doing. If there is a problem, worry about it later. (Many politicians use this algorithm, too) -- A. S. Tanenbaum, M. v. Steen, Distributed Systems

  • Maximilian Rupp 27. Dezember 2024 um 12:06

    Hat das Thema aus dem Forum Programmieren nach Entwicklung verschoben.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!

Benutzerkonto erstellen Anmelden

Rechtliches

Impressum

Datenschutzerklärung