Questions & Answers

SOLVED
HSener
I'm new here

toText()-Methode auf ein DomElement mit eigener Formatvorlage

Jump to solution

Hallo Community,

ich hรคnge gerade vor einem Problem bezรผglich des Rรผckgabewertes von toText() auf ein DomElement mit eigener Formatvorlage.

In den Formatvorlagen habe ich eine eigene Formatvorlage angelegt das den Content mit <p class="info">$CMS_VALUE(#content)$</p> umschlieรŸt.

In der Anwendung habe ich den Broker, StoreElementAgent und masterLanguage (mit LanguageAgent) geholt. In der Anwendung erfolgt danach der Zugriff auf das DomElement.

final Content2 content = (Content2) storeElementAgent.loadStoreElement(Tabellenname, Content2.UID_TYPE,false);

List<Dataset> datasets = content.getDatasets();

for (Dataset dataset : datasets) {

      FormData formData = dataset.getFormData();

      FormField<?> formField = formData.get(masterLanguage, Attributname des DomElements);

      DomElement domElement = (DomElement) formField.get();

      System.out.println(domElement.toText(true);

}

   

toText(true) damit ich die Tags mitbekomme.

Als Ausgabe erhalte ich folgendes

<ft_info>Infotext</ft_info> //falsch

Wieso bekomme ich in den Tags den Referenznamen des FormatTemplates statt die angegebene Definition?

<p class="info">Infotext</p> //richtig

Wรผrde mich รผber Infos und Hilfe freuen.

Freundliche GrรผรŸe

Hรผseyin Sener

1 Solution

Accepted Solutions

Hallo in die Runde,

die API des DOM ist nicht dafรผr ausgelegt, den Inhalt รผber Vorlagen zu erstellen. Die toText Methode dient allein der strukturierten Ausgabe des Inhalts fรผr weitere technische Bearbeitung durch den Redakteur, wie im ContentCreator.

Beste GrรผรŸe

Stefan

View solution in original post

0 Kudos
9 Replies
pavone
I'm new here

Hallo,

in einem kurzen Test konnte ich dein Problem noch nicht nachstellen. Welche genaue FirstSpirit-Version verwendest du?

Viele GrรผรŸe

Tim

0 Kudos

Hallo Herr Gremplewski,

wir verwenden aktuell die Version 5.1.507.

Freundliche GrรผรŸe

Hรผseyin Sener

0 Kudos
LVanselow
I'm new here

Hallo zusammen,

das gleiche Problem habe ich auch. Habe die Standardvorlage headline 2 erlaubt beim Aufruf von toText(true) im Executable erhalte ich <headline_2>Welcome</headline_2>.

FS Version 5.2.313

VG

Lars

0 Kudos

Hallo in die Runde,

die API des DOM ist nicht dafรผr ausgelegt, den Inhalt รผber Vorlagen zu erstellen. Die toText Methode dient allein der strukturierten Ausgabe des Inhalts fรผr weitere technische Bearbeitung durch den Redakteur, wie im ContentCreator.

Beste GrรผรŸe

Stefan

0 Kudos

Hallo Stefan,

gibt es eine von eSpirit empfohlene Methode um ein DOM Feld im Executable komplett zu parsen?

Danke und VG

Lars

0 Kudos

Hallo Lars,

einen solchen Weg gibt es in der API bislang nicht.

Vielleicht magst du dir ja die Zeit nehmen und einen entsprechenden Feature-Wunsch aufzuschreiben. Am Besten mit entsprechendem Anwendungsfall, damit klar ist, warum man den Render-Stand des DOM innerhalb des Executable-Kontexts benรถtigt.

Beste GrรผรŸe

Stefan

Danke Stefan, ich habe eine Idea aufgemacht: https://community.e-spirit.com/ideas/1606

Hallo Stefan,

das verstehe ich nicht, wieso soll das ein Featurewunsch sein?
Wir benรถtigen ein Rendering, welches einfach nicht mรถglich oder kaputt ist.

Was ist mit dem Featurewunsch passiert?

https://community.e-spirit.com/ideas/https://community.e-spirit.com/ideas/1606

Was wir brauchen ist ja einfach ein korrektes Rendering in der API, was auch die $CMS_VALUE(domField)$ machen wรผrde.

Dies erwarte ich eigentlich von der toText(true) oder .parseHtml() Methode (fรผr den anderen Anwendungsfall gibt es ja toText(false)).

Beide funktionieren aber nicht oder nicht richtig. Der Entwickler sollte sich ja nicht um das (verschachtelte Rendering der templates kรผmmern mรผssen?)

Danke & GrรผรŸe,

Maik

0 Kudos

... der Feature Link oben ist einfach defekt.

Korrekt ist:

Rendern von DomElementen im Executable ermรถglichen

Ich probiere jetzt den darin enthaltenen Vorschlag vom Daniel mit dem RenderingAgent.

best,

Maik

0 Kudos

Type a product name