Objekte aus dem Ausgabekanal heraus an Methode übergeben
Author: aschuch
Publication Date: 10/12/2010 23:13
Hallo zusammen,
angenommen ich habe die folgende statische Methode in einer Library eines FS-Modul in der Klasse SomeClass implementiert:
public static String doSomething(Section section) {
return section.getDisplayName();
}
Wie kann ich diese Methode aus dem Ausgabekanal heraus aufrufen, um z.B. den Rückgabewert der Methode über $CMS_SET(...)$ in einer Variablen zu speichern?
Und ist es überhaupt möglich das Section-Objekt als solches aus dem Ausgabekanal heraus zu übergeben? (Aus einem Renderskript heraus geht es, das weiss ich, aber direkt aus dem Ausgabekanal?)
Ich habe das mal mit einer Service-Methode ausprobiert, die ich über
$CMS_SET(result, #global.getConnection().getService("de.adesso.firstspirit.SomeService").doSomething(#global.section))$
aufgerufen habe und dabei die Erfahrung gemacht, dass innerhalb des Ausgabekanals der Zugriff auf Objekte wie z.B. #global, #global.section, #global.page usw. nur zur textuellen Ausgabe der Inhalte dieser Elemente möglch ist. Es wird immer alles auf eine Zeichenkette heruntergebrochen.
D.h. durch den obigen Aufruf wurde der textuelle Inhalt des Absatzes an die Methode übergeben, was dann natürlich zu einem Fehler geführt hat.
Viele Grüße,
Alexander
Tags: ausgabekanal, methode, objekt_übergeben
-
Author: gockel - 10/14/2010 11:50
Welche alternative Möglichkeit gibt es denn, eine Modul-Klasse bzw. konkret eine Modul-Methode aus dem Ausgabekanal heraus aufzurufen? (außer über ein Renderskript)
Keine. Das Renderskript mit Executable ist der alternative Weg.
0
Please sign in to leave a comment.
Comments
1 comment