Questions & Answers

SOLVED
plamka
I'm new here

FS Integration DOM Wert ausgeben

Jump to solution

Hi, ich nutze das Integration Modul um auf die Inhalte aus der Datenbank zuzugreifen.

Jetzt habe ich allerdings an zwei Stellen ein Problem.

Zum einen wรผrde ich gerne das Datum formatieren. Wie mache ich das ???

  <c:out value="${entry.date}" />

Zum anderen wรผrde ich auch gerne das Datenbankfeld text auslesen, hierbei handelt es sich allerdings um ein DOM Element.

Wenn ich direkt drauf zugreife  <c:out value="${entry.text}" />, dann wird alles inkl. der FirstSpirit XML Syntax ausgegeben.

Das ist natรผrlich so nicht richtig, wie bekomme ich den formatierten Text ausgelesen?

<fsi:setSchema schema="intranet">

            <fsi:search resultName="entries">

                <fsi:query>

                    <QUERY entityType="I_Calendar">

                    </QUERY>

                </fsi:query>

                <c:forEach items="${entries}" var="entry">

                        <c:out value="${entry.date}" />

                          <c:out value="${entry.text}" />

                </c:forEach>

            </fsi:search>

        </fsi:setSchema>

Vielen Dank im Vorraus

0 Kudos
1 Solution

Accepted Solutions

Sie mรผssen den Basispfad zur Contentprojektion in die Seite generieren und dann per JSP einfach die entry.id anhรคngen. In Pseudocode sieht das so aus:

$CMS_REF(ss_news_details)$ //liefert die URL zum ersten Datensatz in der Contentprojektion http://yourdomain.com/news-detail_1.html

Sie brauchend die Basis-Url, also alles nach dem letzten "_" abschneiden. Das kรถnnen Sie entweder mit CMS-Mitteln machen (CMS_VALUE, ref Funktion, in String konvertieren, indexOf und substring Methoden nutzen) oder direkt im JSP.

Das JSP macht dann sowas:

<%

String baseUrl = $CMS_VALUE(set_baseUrl); //das ist die bereinigte Basis-Url

String entityUrl = baseUrl + entry.fs_id

%>

und dann per JSP-Include inkludieren.

View solution in original post

0 Kudos
10 Replies
feddersen
Community Manager

Das Integration Modul unterstรผtzt keine komplexen Datentypen. Die Ausgabe von DOM, INPUT_PICTURE und anderen komplexen Datentypen ist damit nicht mรถglich.

Best pratice ist fรผr diese Felder einen entsprechenden HTML-Schnipsel zu generieren, den Sie dann per JSP-Include einbinden kรถnnen.

Siehe auch:

Ausgabe eines Bild-Links aus Suchergebnis von FS-Integration

FS-Integration sollte Medien und DOM-Felder unterstรผtzen

0 Kudos

Das ist natรผrlich รคrgerlich. Damm frage ich mal ganz anders.

Wir wollen eine News Archive Seite umsetzen. Auf der Seite soll es die Mรถglichkeit geben Filter zu setzen.

Wie wรผrde ich so eine Seite dann umsetzen ? Dann mรผsste ich ja das contentSelect und das Integration Modul mit einander kombinieren. Richtig ?

0 Kudos

Wieviele Filterkriterien haben Sie denn? Was spricht dagegen das Archiv รผber eine normale Contentprojektion zu generieren?

Jedes Jahr bzw. jeder Monat ist eine Contentprojektion, das entsprechende รœbersichsseiten generiert. Dazu eine Contentprojektion, die die Newsmeldungen generiert.

0 Kudos

Ich mรถchte eine JQueryPagination Funktion einsetzen und zusรคtzlich nach Datum oder Location sortieren kรถnnen. Zusรคtzlich sollen einige Filter gesetzt werden kรถnnen, wie z.B. Standort.

0 Kudos

Dann wรผrde ich Integration einsetzen und fรผr den Teaser entsprechende Schnipsel generieren, die dann per Include eingebunden werden.

0 Kudos

Und wie wรผrde ich die URL von den einzelnen Teasern ermitteln ?

0 Kudos

Jede Contentprojektion hat ja eine Url (per CMS_REF()$ ermittelbar). Man muss nur die ID am Ende austauschen.

Beispiel:

http://yourdomain.com/news-detail_123.html

http://yourdomain.com/news-detail_45643.html

Alternativ eine Mapping-Datei erzeugen, die die ID des Datensatzes und die URL enthรคlt.

0 Kudos

Das habe ich bereits versucht, bekomme die URL allerdings nicht richtig generiert.

Die ID ist ${entry.fs_id}

Wenn ich ${entry.fs_id}  ausgebe, wird die ID direkt ausgegeben. Alles OK.

Wenn ich allerdings $CMS_REF(ss_news_details, contentId:entry.fs_id)$

in meiner Vorlage eingebe, wird keine URL generiert? Wenn ich z.B.

$CMS_REF(ss_news_details, contentId:"32323")$ eingebe, wird eine URL generiert.

Wie รผbergebe ich denn einen Wert an das CMS_REF, der รผber das Integration Modul ermittelt wurde?

Sieht so aus, als ob das nicht gehen wรผrde ????

oder mache ich etwas falsch ?

0 Kudos

Sie mรผssen den Basispfad zur Contentprojektion in die Seite generieren und dann per JSP einfach die entry.id anhรคngen. In Pseudocode sieht das so aus:

$CMS_REF(ss_news_details)$ //liefert die URL zum ersten Datensatz in der Contentprojektion http://yourdomain.com/news-detail_1.html

Sie brauchend die Basis-Url, also alles nach dem letzten "_" abschneiden. Das kรถnnen Sie entweder mit CMS-Mitteln machen (CMS_VALUE, ref Funktion, in String konvertieren, indexOf und substring Methoden nutzen) oder direkt im JSP.

Das JSP macht dann sowas:

<%

String baseUrl = $CMS_VALUE(set_baseUrl); //das ist die bereinigte Basis-Url

String entityUrl = baseUrl + entry.fs_id

%>

und dann per JSP-Include inkludieren.

0 Kudos

Type a product name