We are using the s:select to show a list of string from resource bundle.
In the Action:
//bank codes will be something [12,13,14]
List<String> bankCodesList; //with setter and getter
String selectedBankCode;
In the message resources each bank will have a name:
bank.code.12= ALFM Bank
bank.code.13= RIHN Bank
....
In the JSP:
<s:select name = "selectedBankCode"
list = "bankCodesList"
listKey = "toString()"
listValue = "%{getText('bank.code.' + toString())}" />
As the bank list is List<String> we used toString() to get the key and used toString() to get value from resource bundle.
I excepted to find the s:select has a status attribute same as s:iterator but I could not find any!
So you think there are better ways?!
Aleksandr M
You don't need to call toString() in listKey attribute at all so you can remove this attribute. And in listValue you can use top keyword.
<s:select name = "selectedBankCode"
list = "bankCodesList"
listValue = "%{getText('bank.code.' + top)}" />
来源:https://stackoverflow.com/questions/23494891/struts-2-sselect-with-values-from-resource-bundle