Mám otázku pomocou funkcie Spring i18n. Môžem preniesť parametre na i18ned správy z iných kódov správ.
Napr.
YesKey=Yes
NoKey=No
Message1=This is {YesKey}
Message2=This is {NoKey}
Je tu nejaká alternatíva, ak nemôžem implementovať.
odpovede:
2 pre odpoveď č. 1Ako cestovné viem, že nie je možné použiť správu v inej správe jednoducho tam, kde používate názov. - To nie je obmedzenie jari, je to obmedzenie java.text.MessageFormat
.
Ale čo môžete urobiť, je toto:
message.properties:
YesKey=Yes
NoKey=No
Message1=This is {0}
Message2=This is {0}
java kód
MessageSource messageSource =...
String param = messageSource.getMessage("YesKey",
new Object[0], Locale.English);
String message = messageSource.getMessage("Message1",
new Object[]{param}, Locale.English);
alebo v jsp (x):
<spring:message var="param" code="YesKey" />
<spring:message var="message" code="Message1" arguments="${param}" />