Passing Parameter zu struts2 Komponente
-
07-07-2019 - |
Frage
Ich versuche, eine struts2 Komponente mit Freemarker zu erstellen. Ich habe eine ftl
Datei mit Code wie folgt:
<script type="text/javascript" src="${parameters.library?default('')}"></script>
, die einen Parameter namens library
erwartet an die Komponente übergeben werden. Wenn der Parameter nicht vorhanden ist, dann wird standardmäßig ein leeres String
.
Auf meiner JSP-Seite, ich beziehe mich auf die Komponente wie folgt aus:
<s:component template="mytemplate.ftl">
<s:param name="library" value="/scripts/mylibrary.js"/>
</s:component>
Leider ist der Wert für die Bibliothek Parameter nicht gesetzt werden. Es ist immer eine leere String
.
Ich bin mit dem Rat von diesem Tutorial und es scheint, als ob die s:param
Tag soll den Parameter in die Vorlage übergeben und zur Verfügung stellen. Was bin ich hier?
Hat jemand eine gewisse Erfahrung, diese Komponenten bauen, die etwas Licht könnte?
Danke.
Lösung
die param mit einfachen Anführungszeichen senden
<s:component template="mytemplate.ftl">
<s:param name="library" value="'/scripts/mylibrary.js'"/>
</s:component>
Andere Tipps
Ich lief schließlich über einige Syntax in der Dokumentation, die funktionieren. Ich habe auf die Parameter wie folgt beziehen:
<script type="text/javascript" src="${parameters.get('library')?default('')}">
</script>