Nun kann man selber Code in jeder beliebigen unterstützten Scriptsprache schreiben und diesen ausführen. Es können sogar in ein und derselben Anwendung verschiedene Scriptsprachen gemischt werden. Man wird allerdings sicherstellen wollen, dass ein bestimmtes Script in der entsprechenden Sprache ausgeführt wird, und überprüfen müssen, dass diese zur Laufzeit auch zur Verfügung steht. Die BSF-Manager-Methode isLanguageRegistered verrät, ob eine benannte Sprache auch verfügbar ist.
Sprachen, die nicht direkt vom BSF unterstützt werden, muss man selber registrieren, für Groovy-Unterstützung fügt man zum Beispiel den folgenden Code ein:
Damit weiß der BSF-Manager, wie die Sprache heißt, wo die entsprechende Klasse für die BSF-Engine zu finden ist und welche Datei-Endungen ein Script in dieser Sprache kennzeichnen. Diese werden von der Methode getLangFromFilename des BSF-Managers benutzt, welche man verwendet, um festzulegen, welche Sprache und damit welche BSF-Engine ein Script zu seiner Ausführung benötigt.
Im Beispielcode zu diesem Artikel findet sich das Script MixedScripts. Diese ist der vereinfachte Entwurf für einen Prototyp. Das ursprüngliche Problem bestand darin, dass ein Kunde einen Prozess in Java entwickelt haben wollte, aber nicht in der Lage war, die Systeme genau anzugeben, in die dieser integriert werden sollte. Es gab zwar ein paar Testdaten, aber nicht mehr, und der Zeitplan verlangte, dass der Java-Code vor der Fertigstellung der Systeme geliefert wurde. Der Kunde verfügte über Administratoren, die Scripts schreiben oder anpassen konnten, welche sich später um die Integration kümmern sollten. Also bestand die Lösung darin, das verarbeitende Element in ein Script zu verpacken, welches für die Datensammlung für den Prozess und die Ausgabe der Ergebnisse verantwortlich war. Durch den Einsatz von Scripting können die Scripts geändert werden, ohne dass die eigentliche Anwendung neu kompiliert werden müsste, wodurch die Anwendung auch noch nachträglich aktualisiert oder verändert werden kann – auch von einem anderen Entwickler oder einer anderen Firma, ohne dass der eigene Quellcode offen gelegt und Java zur verbindlichen Programmiersprache erklärt werden müsste.
Bei diesem vereinfachten Beispiel geht es darum, dass ein Script eine Liste von URLs abruft, diese Liste mithilfe von hartcodiertem Code verarbeitet und die Ergebnisse einem weiteren Script für die Ausgabe übergibt. Für dieses Beispiel besteht die Verarbeitung der URLs nur darin, den Inhalt der entsprechenden URL abzurufen.
Neueste Kommentare
Noch keine Kommentare zu Scripting mit Java: Das Bean Scripting Framework
Kommentar hinzufügenVielen Dank für Ihren Kommentar.
Ihr Kommentar wurde gespeichert und wartet auf Moderation.