Questions & Answers

SOLVED
joschka
I'm new here

Referenzierung eines Mediums innerhalb CMS_INPUT_CONTENTAREALIST

Jump to solution

Hallo zusammen,

folgendes Problem:

Ich muss zu einem Medium (Objekttyp Media) die Referenzierungen ausfindig machen. Innerhalb der referenzierten Absรคtze gibt es ein zusรคtzliches Textfeld, welches ich auslesen muss.

Die Referenzierung ist hierbei folgendermaรŸen aufgebaut:

  • Absatz "downloadlist" mit CMS_INPUT_CONTENTAREALIST ->
  • innerhalb CMS_INPUT_CONTENTAREALIST ist Template "download" erlaubt ->
  • innerhalb "download" gibt es die Eingabekomponente CMS_INPUT_FILE ("st_file"), in der das Medium referenziert ist. Innerhalb des Templates "download" gibt es nun ein CMS_INPUT_TEXT mit notwendigen Informationen.

Problem:

Wenn ich die Referenzierung fรผr das Medium รผber getIncomingReferences() ermittle, wird mir die "downloadlist" als Element zurรผckgegeben, in der mehrere "download" Elemente vorkommen kรถnnen.

Ich kann aktuell deshalb nicht sagen, ob bei einer Iteration รผber die "downloadlist" der "download" Absatz mit dem richtigen Medium vorliegt.

รœber download.getFormData().get(#global.language, "st_file") bekomme ich ein "DataWrappingFormData$EditorValueWrappingFormField". Wie komme ich denn zu irgendeinem Wert, den ich mit meinem ausgehenden Dokument vom Typ Media vergleichen kann?

Ich hoffe ich konnte mein Problem halbwegs verstรคndlich erlรคutern.

Schon mal vielen Dank fรผr mรถgliche Hilfen.

VG

Joachim

0 Kudos
1 Solution

Accepted Solutions
marza
I'm new here

Hallo Joachim,

ein Blick in die Api-Doc verrรคt Dir (die findet Du auch im ODFs Deines FirstSpirit-Servers, such dort einfach "api"), dass Du auf dem FormField per nochmaligen get() den Wert bekommst. Im FormField gibt es auch eine Methode getType(), welche Dir die Class<?> dieses Wertes liefert.

Beispiel (Ausschitt):

Wert -> formData.get(#global.language, "st_meinfeld").get()

Typ -> formData.get(#global.language, "st_meinfeld").getType()

Konnte ich Dir damit weiterhelfen?

GrรผรŸe Marian

P.S. Tipp: Da das immer Java-Objekte sind, kann man mit formData.get(#global.language, "st_meinfeld").class.name schnell sich den Namen der Klasse an dieser Stelle im Template ausgeben lassen. Wenn der Name am Ende ein "Impl" hat, lรคsst man das weg und findet mit dem Rest in der AP eine Beschreibung.

View solution in original post

0 Kudos
2 Replies
marza
I'm new here

Hallo Joachim,

ein Blick in die Api-Doc verrรคt Dir (die findet Du auch im ODFs Deines FirstSpirit-Servers, such dort einfach "api"), dass Du auf dem FormField per nochmaligen get() den Wert bekommst. Im FormField gibt es auch eine Methode getType(), welche Dir die Class<?> dieses Wertes liefert.

Beispiel (Ausschitt):

Wert -> formData.get(#global.language, "st_meinfeld").get()

Typ -> formData.get(#global.language, "st_meinfeld").getType()

Konnte ich Dir damit weiterhelfen?

GrรผรŸe Marian

P.S. Tipp: Da das immer Java-Objekte sind, kann man mit formData.get(#global.language, "st_meinfeld").class.name schnell sich den Namen der Klasse an dieser Stelle im Template ausgeben lassen. Wenn der Name am Ende ein "Impl" hat, lรคsst man das weg und findet mit dem Rest in der AP eine Beschreibung.

0 Kudos
MichaelaReydt
Community Manager

Hallo Joachim,

benรถtigst du noch weitere Hilfe oder konnte Marian dir bereits weiterhelfen? In diesem Fall wรคre es super, wenn du seine "richtige Antwort" entsprechend markierst.

Solltest du zwischenzeitlich eine eigene Lรถsung gefunden haben, wรคre es toll, wenn du sie hier bereitstellst.

Viele GrรผรŸe

Michaela

0 Kudos

Type a product name