Ich habe Probleme mit EL und Javascript-Funktionen (JSF 1.2, Facelets, Richfaces 3.3.0GA). Ich habe eine Seite, die eine andere Zusammensetzung enthält:Verketten Strings in JSF/JSP EL und Javascript
<ui:include src="/pages/panels/examinationPanel.xhtml">
<ui:param name="prefix" value="new" />
Und in meinem ui:composition
möchte ich die prefix
jedem ID anhängen. Zum Beispiel:
<rich:modalPanel id="#{prefix}_examinationPanel">
Das funktioniert ok.
Aber das Problem kommt, wenn ich auf die Komponenten in Funktionen wie oncomplete
zugreifen möchte, kann ich es nicht erhalten, um die Zeichenfolgen richtig zu verketten. Zum Beispiel
oncomplete="#{rich:component('#{prefix}_examinationPanel')}.show();"
Ich habe auch mit fn:join
versucht, aber es hat nicht die Funktion ausführen, weil es Fehler beklagt, wenn es Zeichen „#“ findet. Zum Beispiel:
oncomplete="#{rich:component(fn:join(#{prefix},'examinationPanel'))}.show()"
wirft
SEVERE: Servlet.service() for servlet Faces Servlet threw exception org.apache.el.parser.ParseException: Encountered "fn:join(#" at line 1, column 33.
Encountered "fn:join(#"
Verschiedene Fehler, wenn ich es mit Klammern oder mit # und Klammern stemmen.
Was mache ich falsch?
Und eine weitere Frage, in einem bedingten Befehl wie
oncomplete="#{a}?#{b}:#{c}"
Wie kann ich „Gruppe“ in der Lage sein, weitere Aktionen auszuführen, wenn wahr oder falsch? Beispiel:
oncomplete="#{a}?(#{b}#{f}):(#{c}#{d}#{e})"
Ich habe mit Klammern versucht, aber es nicht richtig analysieren.
Vielen Dank im Voraus.
Facelets oder JSP? – Bozho
Ich benutze Facelets. Ich habe den Beitrag bearbeitet, um diese Information hinzuzufügen, die in der Tat relevant ist – pakore