bx:groovy
InhaltMittels bx:groovy kann innerhalb eines Template einfach Groovy-Code ausgeführt werden.
Funktionen:
Groovy Code ausführen
<bx:groovy [includes="{Groovy-Bausteine}"] [nobody]> ... </bx:groovy>
Der Parameter includes (zur Kompatibilität auch include möglich) enthält einen oder mehrere (kommagetrennte) Titel von Groovy-Bausteinen. Diese werden in der angegebenen Reihenfolge zusammengesetzt. Danach wird geladen…noch der Groovy-Code im Tag-Body angehangen.
Die Angabe von nobody bewirkt, dass der Taginhalt nicht als Groovy-Code angesehen wird. Somit kann man selbst dynamische Sachen (via includeTag.computeBody()) auswerten.
Beispiele
Nur Code
<bx:groovy>
println("Hello, World")
</bx:groovy>
Include und Code
<bx:groovy includes="MyLib">
MyLib.doStuff()
</bx:groovy>
Nur Include
<bx:groovy includes="MyLib,OtherLib" />
Parameter übergeben und auslesen
<bx:groovy name="clipboard:myName" age="25">
def name = includeTag.getStringParameter("name")
def age = includeTag.getIntParameter("age", 0)
println("Hello, $name")
if (age < 18) println("no access!")
</bx:groovy>
nobody
<bx:groovy includes="CheckRole" role="Admin" nobody>
<p>Herzlich willkommen in der Administration</p>
</bx:groovy>
// CheckRole Groovy (Auszug):
def requestedRole = includeTag.getStringParameter("role")
if (hasRole(requestedRole)) {
println(includeTag.computeBody())
}
Verweise auf diese Seite:
Verwendungsmöglichkeiten Verwendungsmöglichkeiten
(2 Verweise)