Die Message Message Tag API ermöglicht
nur 5 parametrische Argumente
Ah! Ich mache meine völlige Unkenntnis der Struts API verantwortlich.
Um das Handbuch zu zitieren:
Einige der Funktionen in dieser Taglib
sind auch im JavaServer verfügbar
Seiten Standard-Tag-Bibliothek (JSTL). Das
Struts Team fördert den Einsatz der
Standard-Tags über die Struts-spezifischen
Tags, wenn möglich.
Sie könnten das wahrscheinlich mit der Csylcha Taglib machen.
%Vor%
Der Nachteil ist, dass dies kein gültiges XML ist, und das Ziehen der Werte zu Variablen beinhaltet mehr Indirection, Lookups und Ausführlichkeit. Dies ist keine gute Lösung.
Ich kenne Struts nicht, aber wenn es etwas wie JavaServer Faces (der selbe Architekt) ist, dann gibt es wahrscheinlich Unterstützung für das Konfigurieren eines Ersatzsteuerelements. Ich würde entweder das vorhandene Steuerelement durch ein flexibleres ersetzen oder ein neues hinzufügen.
Immer wenn ich neu übersetzt bekomme
Text, ich muss entscheiden, was zu umgeben ist
mit dem <a>...</a>
Markup.
Sie sollten dies auf keinen Fall tun und ich sehe dies als einen Fehler in Ihrem Übersetzungsprozess (Ich bin ein Ex-Lokalisierungsingenieur und ein ehemaliger Entwickler von Lokalisierungstools). Die Zeichen {0}
sollten in den Dateien enthalten sein, die an die Übersetzer gesendet werden. Die Lokalisierungsrichtlinien sollten den Kontext der Zeichenfolge und die Bedeutung von Variablen erläutern.
Sie können die Eigenschaftenpakete bei der Rückgabe programmgesteuert validieren. String-spezifische Regex können den Trick machen. Es liegt nicht außerhalb der Möglichkeiten, dass "Adresse" und "Kontaktinformationen" während der Übersetzung die Reihenfolge wechseln.
Die einfachste Lösung besteht darin, die zu rendernden Nachrichten neu zu gestalten:
%Vor%
Ich akzeptiere, dass dies in keinem Fall eine Lösung sein kann und dass Ihr UI-Designer Zähne spuckt.