sgoess
I'm new here

ContentCreator: FS_LIST mit Datenquelle - Problem beim Speichern

Hallo zusammen,

die Einrichtung des ContentCreators hakt eben bei einer Content-Projektion. Wir haben eine Seite für einzelne News-Einträge (1 Eintrag pro Seite), auf welcher sich eine FS_LIST-Eingabekomponente mit der Datasource "database" befindet. Dort können einem News-Eintrag nochmals Details hinzugefügt werden. Es handelt sich also um eine Tabellenvorlage (News), welche wiederum auf eine Tabellenvorlage (News Detail) innerhalb des gleichen Schemas verweist.

        <FS_LIST name="cs_details" hFill="yes" height="500">

          <DATASOURCE type="database" useLanguages="no">

            <LABELS>

              <LABEL lang="*">#item.cs_headline</LABEL>

            </LABELS>

            <ACTIONS>

              <ACTION name="NEW">

                <PARAM name="create-index">LAST</PARAM>

              </ACTION>

              <ACTION name="DELETE">

                <PARAM name="show-confirm">YES</PARAM>

              </ACTION>

              <ACTION name="EDIT"/>

              <ACTION name="DOWN"/>

              <ACTION name="UP"/>

            </ACTIONS>

            <COLUMNS>

              <COLUMN show="no">#identifier</COLUMN>

              <COLUMN show="yes" sortOrder="ascending">cs_order_index</COLUMN>

            </COLUMNS>

            <LAYOUT>

              <ADD component="toolbar" constraint="top"/>

              <ADD component="overview" constraint="hide"/>

              <ADD component="stackedview" constraint="center"/>

            </LAYOUT>

            <PERSISTENCEINDEX>order_index</PERSISTENCEINDEX>

            <table>cms_news.t_news_details</table>

          </DATASOURCE>

          <LANGINFOS>

            <LANGINFO lang="*" label="Detail text"/>

            <LANGINFO lang="DE" label="Detailtexte"/>

          </LANGINFOS>

        </FS_LIST>

Ausgegeben wird die FS_LIST per CMS_FOR:

$CMS_FOR(item, cs_details.sort(x -> x.order_index))$

  <div$CMS_VALUE(editorId(target:item))$>

  $CMS_IF(!item.cs_headline.isEmpty())$<h4$CMS_VALUE(editorId(target:item, editorName:"cs_headline"))$>$CMS_VALUE(item.cs_headline)$</h4>$CMS_END_IF$

  </div>

$CMS_END_FOR$

In den Einstellungen für editorId habe ich schon alle erdenklichen Kombinationen mit view, target, element, template etc. versucht - ohne Erfolg, z. B.:

<div$CMS_VALUE(editorId(view:"cms_news", entity:item, template:"cms_news.t_news_details"))$>

Es lässt sich zwar die Eingabekomponente mit korrektem Inhalt zum Bearbeiten öffnen, aber ein Speichern ist nicht möglich. Beim Bearbeiten des DIV öffnet sich also ein Easy Edit-Fenster mit korrektem Inhalt - dieser wird beim Speichern jedoch nicht übernommen. Beim Bearbeiten des H4 mit InEdit erscheint nach dem Speichern ein Fehler "Speichern des Formulars fehlgeschlagen! Ursache: 500 The call failed on the server; see server log for details". In den Logs finde ich jedoch nichts entsprechendes.

Über die Bearbeitungsfunktion des News-Datensatzes kann ich per ContentCreator auch auf die FS_LIST zugreifen und diese erfolgreich bearbeiten - diesen Mehraufwand würde ich den Redakteuren aber gerne ersparen.

Ich freue mich über jeden Hinweis, wo hier mein Fehler liegt.

Viele Grüße

Sebastian Goeß

0 Kudos
4 Replies
tenter
I'm new here

Hallo Sebastian,

vielleicht kannst du im Log nichts finden, weil der konfigurierte Loglevel nicht ausreicht? Ich befürchte ohne Log können wir an dieser Stelle auch nicht wirklich weiterhelfen. Schau mal, ob du uns da nicht doch irgendwie ein Logfile zukommen lassen kannst.

Ansonsten könntest du nochmal einen Blick hier rein werfen: Webedit bei Datenquelle mit Absatzvorlagen  Dort gibt es ein verwandtes Problem, wobei du versuchen kannst die editorId doch nochmal anders anzugeben als du es aktuell hast, nämlich gemäß meiner Antwort.

Klappt das?

Grüße,

Hannes

0 Kudos

Hallo Hannes,

der verlinkte Beitrag geht in die ähnliche Richtung, aber so klappt es leider auch nicht.

In welchem Log sollte der Fehler zu finden sein und wie muss der Log-Level dafür eingestellt werden? Ich habe eben nochmals alle Logs geprüft - zu dem besagten Fehler finde ich dort nach wie vor nichts.

In der Browser-Konsole steht folgendes:

de.espirit.firstspirit.webedit.client.forms.StoreElementFormServiceAsyncProxy

SEVERE: Status code detection: 500 The call failed on the server; see server log for details

Viele Grüße

Sebastian

0 Kudos

Hallo Sebastian,

im Server Monitor des FirstSpirit-Servers kann man zum Einen während des laufenden Betriebs den Log-Level ändern und zum Anderen auch die Server-Logs durchsuchen. Weißt Du zufällig, ob ihr den internen Jetty oder einen externen Tomcat als Laufzeitumgebung für den Content-Creator benutzt?

Sollte der Tomcat zum Einsatz kommen, kann es sein, dass bestimmte Fehler nicht im FS-Server-Log auftauchen, sondern ggf. in der catalina.out des Tomcats "hängen" bleiben. Beim Jetty können die Fehler auch auf dem Server in einer anderen Logdatei als dem fs-server.log zu finden sein. Es lohnt auch so einen Blick ins <FS-Server-Root>/log-Verzeichnis einen Blick zu werfen.

Grüße Marian

0 Kudos

Hallo Sebastian,

benötigst Du noch weitere Hilfe oder hat Dir die Antwort von Marian bereits geholfen? Um dir weiterhelfen zu können, müsstest du uns sonst bitte erstmal die Logfiles zukommen lassen.

Viele Grüße,

Hannes

0 Kudos