Search the FirstSpirit Knowledge Base
Hallo zusammen,
ich lese einen Ordner aus der Medienverwaltung aus, der per FS_REFERENCE ausgewählt wird.
Die Dateien, die darin enthalten sind, lese ich rekursiv aus:
$CMS_SET(mediaClass, class("de.espirit.firstspirit.access.store.mediastore.Media"))$
$CMS_FOR(file, stFolder.get().getChildren(mediaClass, true))$
$CMS_VALUE(file.getDisplayName(#global.Language))$<br>
$CMS_END_FOR$
Die Ausgabe funktioniert einwandfrei, allerdings bekomme ich immer folgende Fehlermeldung:
"(de.espirit.firstspirit.generate.SiteProduction): Cannot iterate over: class de.espirit.firstspirit.parser.eval.Undefined"
Ich habe es schon mit mehreren unterschiedlichen Ordnern getestet, der Fehler trat jedes Mal auf.
$CMS_VALUE(stFolder.get().class)$ gibt mir "de.espirit.firstspirit.store.access.mediastore.MediaFolderImpl" aus, hier ist also alles ok.
Hat jemand eine Idee, woher dieser Fehler kommt?
Danke und Grüße,
Jacky
Zwischenfrage:
$CMS_FOR(file, stFolder.get().getChildren(mediaClass, true))$
Warum noch ein get() ? Reicht das getChildren(...) nicht aus?
Grüße
Marcus
Ohne das get() funktioniert es nicht. Warum das so ist können die Profis hier sicherlich besser erklären, aber ich versuche es mal.
stFolder ist die Eingabekomponente FS_REFERENCE (Klasse: de.espirit.firstspirit.access.editor.value.TargetReferenceImpl). Mit dem get() "holt" man sich nun das Element von der Eingabekomponente und kann damit dann weiterarbeiten.
In meinem Fall hole ich mir den ausgewählten Ordner (Klasse:de.espirit.firstspirit.store.access.mediastore.MediaFolderImpl) von der Eingabekomponente und kann dann die Methode getChildren() darauf ausführen.
Grüße,
Jacky
Habe es nun mal schnell selber ausgetestet. Funktioniert bei mir einwandfrei. Ohne irgendwelche Fehlerausgaben.
Wo taucht der Fehler bei Dir denn auf? Fehler in der Vorschau? Oder wo?
Der Fehler tritt beim Deployment auf und hängt mit der Sprache Englisch zusammen.
Ich habe gerade herausgefunden, dass ich in englischer Sprache überhaupt keine Ausgabe erhalte und der Fehler auch bei der Generierung der englischen Seite auftritt. Die Medien sind größtenteils sprachunabhängig, aber die Fehlermeldung taucht auch bei sprachabhängigen Medien auf.
Jetzt weiß ich wenigstens schon, woher der Fehler kommt.
Ich habe den Fehler gefunden. Es war für die englische Sprache kein Ordner ausgewählt... .Jetzt funktioniert es ohne Probleme für beide Sprachen.
Danke für Deine Hilfe.
Viele Grüße,
Jacky