pschult
I'm new here

NoSuchFormFieldException behandeln

Jump to solution

Ich greife auf ein FormData zu, um ein bestimmtes FormField anzusprechen, welches aber nicht unbedingt vorhanden sein muss.

$CMS_IF(formData.get(#global.masterlanguage, "fieldname"))$

erzeugt jedoch wenn fieldname nicht vorhanden ist eine Exception im Generierungslog, was nach Konsultation der API auch logisch ist.

FormField<?> get(@Nullable Language language, String fieldName) throws NoSuchFormFieldException //http://www.e-spirit.com/odfs50/access/de/espirit/firstspirit/forms/FormData.html#get%28de.espirit.fi...

Gibt es eine Möglichkeit im Template Exceptions zu behandeln?

1 Solution

Accepted Solutions

Hallo,

Exception Handling im Ausgabekanal gibt es so nicht.

Im angeführten Beispiel reicht es vorher zu Prüfen, ob es dieses FormField gibt, oder nicht:

$CMS_IF(formData.getForm().findEditor("fieldname") != null)$

          $-- do something --$

$CMS_END_IF$

Wenn es in einem anderen Anwendungsfall darauf ankommt, ein richtiges Exceptionhandling zu haben, dann kann man den entsprechenden Code mithilfe von CMS_RENDER in ein Script auslagern, wo man dann wie üblich mit Exceptions umgehen kann.

Viele Grüße

Rouven

View solution in original post

4 Replies
rbitdd
Returning Responder

Ich pusche den Beitrag mal. Ich habe gerade das gleiche Problem. Smiley Wink

0 Kudos

Hallo,

Exception Handling im Ausgabekanal gibt es so nicht.

Im angeführten Beispiel reicht es vorher zu Prüfen, ob es dieses FormField gibt, oder nicht:

$CMS_IF(formData.getForm().findEditor("fieldname") != null)$

          $-- do something --$

$CMS_END_IF$

Wenn es in einem anderen Anwendungsfall darauf ankommt, ein richtiges Exceptionhandling zu haben, dann kann man den entsprechenden Code mithilfe von CMS_RENDER in ein Script auslagern, wo man dann wie üblich mit Exceptions umgehen kann.

Viele Grüße

Rouven

pschult
I'm new here

Vielen Dank. Die Lösung mit findEditor() ist genau das Richtige.

0 Kudos
rbitdd
Returning Responder

Auch von meiner Seite ein herzliches Danke schön. Smiley Happy

0 Kudos