Verwenden von berechneten Feldern
Für die Formeln von Feldwerten wird die Syntax der Unified Expression Language verwendet. Diese Expression Language definiert die folgenden Literale:
• Boolesch: true und false
• Ganzzahl: wie in Java
• Gleitkomma: wie in Java
• Zeichenfolge: mit einfachen und doppelten Anführungszeichen. " wird interpretiert als \", ' wird interpretiert als \' und \ wird interpretiert als \\.
• Undefiniert: null
Zusätzlich zu den Operatoren . und [] bietet die Expression Language die folgenden Operatoren:
• Arithmetisch: +, - (binär), * und div /, und, % und mod, - (unär)
• Logisch: and, &&, or,||, not, !
• Relational: ==, eq, !=, ne, <, lt, >, gt, <=, ge, >=, le Vergleiche können mit anderen Werten, mit booleschen Werten, Zeichenfolgen, Ganzzahl- oder Gleitkomma-Literalen durchgeführt werden.
• Leer: Der Operator empty ist eine Präfixoperation, die verwendet werden kann, um zu bestimmen, ob ein Wert null oder empty ist.
• Bedingung: A ? B : C Werten Sie B oder C in Abhängigkeit vom Ergebnis der Auswertung von A aus.
• Projektion: .{alias|expression} ist ein spezieller Operator für Sammlungen, der über die Sammlung iteriert und eine neue Sammlung durch Auswerten des angegebenen Ausdrucks oder Unterausdrucks für jedes Element alias der ursprünglichen Sammlung erstellt.
Operatoren in absteigender Reihenfolge und von links nach rechts haben folgende Priorität:
• [] .
• () - wird verwendet, um die Priorität von Operatoren zu ändern.
• - (unary) not ! empty
• * / div % mod
• + - (binary)
• < > <= >= lt gt le ge
• == != eq ne
• && and
• || or
• ? :
Die folgenden Wörter sind für die Page Expression Language "JavaServer" reserviert und dürfen nicht als IDs verwendet werden.
• and
• div
• empty
• eq
• false
• ge
• gt
• instanceof
• le
• lt
• mod
• ne
• not
• null
• or
• true