2011-01-07 10 views
5

Ich habe eine Anforderung, die geschweiften Klammern aus der Eigenschaftendatei in meinem gerenderten JSP-Code beizubehalten. Ist es möglich?Wie geschweifte Klammern in Datei .properties in Struts 1.2 zu entkommen

Ich habe versucht, Optionen wie: \{, '{, {{, '{', /{, aber keine Hilfe.

Zur Laufzeit, erhalte ich eine Ausnahme:

java.lang.IllegalArgumentException: nicht Argument Nummer

Das Problem ist, dass Streben verarbeitet die {} als Platzhalter für eine Laufzeit analysieren Wert. Jede Hilfe sehr geschätzt.

+0

haben Sie versucht, beide geschweifte Klammern wie 'Text '{' irgendein Text '}' mehr Text '? – Nishant

+0

Danke für Ihre Antwort. Ja, es hat nicht geholfen. – Nishant

Antwort

0

Vom Message spec: http://download.oracle.com/javase/1.4.2/docs/api/java/text/MessageFormat.html

Innerhalb eines String " ''" ein Apostroph. Ein QuotedString kann beliebige Zeichen außer einzelne Anführungszeichen enthalten; die umgebenden einzelnen Anführungszeichen werden entfernt. Ein UnquotedString kann beliebige Zeichen mit Ausnahme von einfachen Anführungszeichen und linken geschweiften Klammern enthalten. Daher kann eine Zeichenkette, die in der formatierten Nachricht "'{0}" führen soll, geschrieben werden als "' '{' 0} ''" oder "'' '{0}' ''".

was bedeutet, dass Sie wahrscheinlich versuchen sollten, Ihre geschweiften Klammern wie diese '''{' zu versuchen.

1

Ich sprang auf dieses Problem vor nur 10 Minuten. Dies ist mein Versuch: put '& # 123' anstelle von '{'. (Referenz: http://www.asciitable.com/)

Verwenden Sie keinen Oct- oder Hex-Code, da Java diese Zahlen in {vor dem eigentlichen Lesen des Schlüssels analysiert; Daher wird es zu dem gleichen Problem führen. Nur HTML-Code funktioniert, da Java es nicht analysieren wird, aber die JSP-Seite