Hallo zusammen,
Wir haben in einem Datenbanktabelle ein CMS_INPUT_DOM Element definiert. Hier ist es dem Redakteur erlaubt, Links zu setzen. Setzt er diese, so wird in unserer Content Projection Seite die HTML Ausgabe aus dem Ausgabekanal des Linktemplates verwendet. Die Ausgabe erfolgt dabei über
$CMS_VALUE(cs_description,default:"")$
So kommt am Ende der Link raus:
<a href=" /ogc/fs5preview/preview/1060029/site/DE/current/1008140/1136587 ">hier</a>
Lesen wir die HTML Ausgabe unseres DomElements aus über:
Store contentStore = userService.getStore(Type.CONTENTSTORE, false);
Content2 content2 = (Content2) contentStore.getStoreElement("glossary", IDProvider.UidType.CONTENTSTORE);
Dataset dataset = content2.getDataset(glossar_entry);
FormData formData = dataset.getFormData();
DomElement dom = (DomElement) formData.get(language, "cs_description").get();
String glossar_entry_desc = dom.toText(true);
So wird der Link mit folgendem HTML ausgegeben:
<a data-link-id="8700de9c-c1b9-4eca-b3f3-040f3157aa26" data-link-template="internal_link" href="#">hier</a>
Dieses Format haben wir aber gar nicht in unserem Link-Template definiert. Es sieht so aus, als findet hier keine Auswertung des Links statt.
Auch ausgelesen über die alte, jetzt deprecated Variante bekomme wir dieselbe Ausgabe:
Store contentStore = userService.getStore(Type.CONTENTSTORE, false);
Content2 content2 = (Content2) contentStore.getStoreElement("glossary", IDProvider.UidType.CONTENTSTORE);
Dataset dataset = content2.getDataset(glossar_entry);
Data formData = dataset.getData();
DataValue dataValue = (DataValue) formData.get("cs_description");
DomEditorValue dom = (DomEditorValue) dataValue.getEditor();
String glossar_entry_desc = dom.toHtml(language);
Muss man das HTML aus dem DomElement noch extra parsen oder wieso wird der Link hier nicht ausgewertet?
Viele Grüsse
Andreas Österle