alwolf
I'm new here

CMS_RENDER(script:"script"...) nicht im XML-Kanal möglich?

Jump to solution

Guten Tag,

ich habe gerade entdeckt, dass mein Scriptaufruf im XML-Kanal (FOS) nicht funktioniert.

Im log erhalte ich folgende Fehlermeldung:

WARN  ($CMS_RENDER(script:"print_test")$ at 34, 10): script 'print_test' (id=670930) is not of type 'template'

Hier die Zeile in der Vorlage:

<test>$CMS_RENDER(script:"print_test")$</test>

Und hier das Script:

//!BeanShell

result.setValue("test");

Im HTML-Ausgabekanal funktioniert der Skriptaufruf einwandfrei.

0 Kudos
1 Solution

Accepted Solutions

Hallo Alexander,

hast Du auch den Beanshell Code im XML Kanal gepflegt?

es reicht nicht, den Code im HTML Kanal zu pflegen. Du musst das auch in alle Kanäle kopieren, die den Code nutzen sollen.

Viele Grüße

Jan Tilo

View solution in original post

0 Kudos
4 Replies
pavone
I'm new here

Hallo Alexander,

im Reiter "Eigenschaften" des Skriptes muss als Geltungsbereich "Vorlage" ausgewählt werden. Prüf bitte mal, ob das bei dir der Fall ist.

geltungsbereich.png

Falls die Option richtig gesetzt ist und die Warnung weiterhin auftritt, wäre die verwendete FirstSpirit-Version eine hilfreiche Information.

Viele Grüße

Tim

FirstSpirit SiteArchitect 5.1.311.65223

Server version: 5.1.311.65223

Der Geltungsbereich war falsch gesetzt - das habe ich korrigiert.

Trotzdem erfolgt im XML-Ausgabekanal keine Ausgabe, auch wenn nun immerhin keine Fehlermeldung angezeigt wird.

Hier der vollständige Ausgabekanal der Seite:

<supplementary>

          <attributes>

                    <Page uid="$CMS_VALUE(#global.page.uid)$">

                              <test>$CMS_RENDER(script:"print_test")$</test>

                    </Page>

          </attributes>

</supplementary>

Die Vorschau zeigt folgendes Ergebnis:

<supplementary>

  <attributes>

    <Page uid="portalseite">

    <test/>

  </Page>

</attributes>

Nochmals: Im HTML Ausgabekanal ist das kein Problem, dort wird "Test" ausgegeben.

0 Kudos

Hallo Alexander,

hast Du auch den Beanshell Code im XML Kanal gepflegt?

es reicht nicht, den Code im HTML Kanal zu pflegen. Du musst das auch in alle Kanäle kopieren, die den Code nutzen sollen.

Viele Grüße

Jan Tilo

0 Kudos

Danke! Das war mir nicht bewusst  - die Einbindung von Scripten in Vorlagen wurde bei uns bisher leider kaum genutzt - und in allen anderen Fällen ist es ja scheinbar egal, in welchem Kanal das Script liegt.

0 Kudos