2012-09-06 12 views
6

Ich muss meine eigene Java-Klasse in einer CFML-Seite verwenden.ColdFusion: über die Verwendung von benutzerdefinierten "eigenen geschriebenen" Java-Klassen

This entry in the documentation klingt gut, aber nicht zu erklären, welche Dateien ich erstellen muss.

Ich habe versucht, eine test.cfm Seite unter meiner Website root zu erstellen. Dann platziert TestClass.java + TestClass.class im selben Pfad. Aber das führt zu einem Fehler "Klasse nicht gefunden"!

Können Sie mir bitte helfen?

+1

http://blogs.adobe.com/cantrell/archives/2004/07/the_definitive.html – Henry

Antwort

14

eine TestClass.java + TestClass.class im selben Pfad.

Sie können nicht einfach .class Dateien irgendwo platzieren. Wenn der CF-Server gestartet wird, überprüft er nur bestimmte Speicherorte für Klassen/Gläser. Diese Orte werden als "CF-Klassenpfad" bezeichnet. Ihre kompilierte .class-Datei muss innerhalb des CF-Klassenpfads platziert werden, oder sie wird nicht erkannt.

Um eine benutzerdefinierte Java-Klasse zu verwenden:

  1. eine Quelldatei erstellen dh YourTestClass.java
  2. den Quellcode in eine Klassendatei Kompilieren dh YourTestClass.class
  3. Platz die kompilierte .class Datei irgendwo innerhalb des CF Classpath wie zum Beispiel:

    • WEB-INF\classes - für einzelne .class Dateien
    • WEB-INF\lib - für .jar Dateien (mehrere Klassen)

    Hinweis: Sie können auch die Artikel auf den CF-Klassenpfad über die ColdFusion Administrator hinzufügen. Das Platzieren der Klasse in einem der Standardverzeichnisse ist jedoch einfacher.

  4. den Coldfusion-Server neu starten, damit er die neuen Klassen erkennt

Hinweis: Obwohl Sie einzelne .class Dateien verwenden können, ist es üblich, sie in .jar Dateien zu verpacken.

+0

Als eine Randnotiz können Sie auch einen neuen Ordner in cf erstellen und den Klassenpfad im Administrator hinzufügen, wenn Sie möchten um Sie benutzerdefinierte Klassen getrennt zu halten. – Dpolehonski

+0

vielen Dank! :) –

+0

Sie können dynamisches Laden durchführen, wenn Sie JavaLoader (http://javaloader.riaforge.org/) oder ColdFusion 10 (das JavaLoader enthält) verwenden. –