java - 下拉菜单中的 i18n 使用 s :select tag

标签 java jsp struts2 internationalization ognl

我的 JSP 页面中有一个下拉菜单,它是通过 <s:select> 实现的标记为

<s:select name="priorToApplyingInfo.userProfile.phoneNumbers[0].type"
 listKey="key" listValue="value" list="phoneTypes" headerKey="0" headerValue=""/>

现在下拉菜单中的值来自列表 phonetypes它被实现为 HashMap.java文件。

phoneTypes = new LinkedHashMap<Integer, String>();
phoneTypes.put(new Integer(1), getText("HOME"));
// Phone ContactBook category for the business phone
phoneTypes.put(new Integer(DAOHelperFactory.OWNER_PROFILE_PHONE_CATEGORY), getText("WORK"));
phoneTypes.put(new Integer(3), getText("MOBILE"));
phoneTypes.put(new Integer(DAOHelperFactory.OWNER_PROFILE_FAX_CATEGORY), getText("FAX"));
phoneTypes.put(new Integer(5), getText("OTHER"));

preferredContact = new ArrayList<String>();
preferredContact.add(getText("HOME"));
preferredContact.add(getText("WORK"));
preferredContact.add(getText("MOBILE"));
preferredContact.add(getText("FAX"));
preferredContact.add(getText("EMAIL"));
preferredContact.add(getText("OTHER"));

bestContactTime = new ArrayList<String>();
bestContactTime.add(getText("AFTERNOON"));
bestContactTime.add(getText("EVENING"));
bestContactTime.add(getText("MORNING"));

home=home这样的键, work=work等,位于 .properties 中文件 我正在致力于此页面的国际化,但我无法找到一种方法来获取该页面的翻译 下拉菜单中的值。

最佳答案

要更改 Struts2 应用程序中的区域设置,您需要包含 requst_locale某些链接或表单的参数。

<s:url var="urlen" includeParams="all" value="">
  <s:param name="request_locale">en</s:param>
</s:url>
<s:a href="%{#urlen}">English</s:a>

如果您想从操作类更改区域设置,请使用 ActionContext设置它并将其放入 HTTP session 中。

ActionContext.getContext().setLocale(locale);
session.put(I18nInterceptor.DEFAULT_SESSION_ATTRIBUTE, locale);
<小时/>

您可以调用getText方法也在 JSP 中 listValue <s:select> 的属性标签。

<s:select name="priorToApplyingInfo.userProfile.phoneNumbers[0].type"
 list="phoneTypes" headerKey="0" headerValue=""
 listKey="key" listValue="%{getText(value)}"/>

关于java - 下拉菜单中的 i18n 使用 s :select tag,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18407063/

相关文章:

javascript - 在 Web 上使用 JavaScript 将文本文件保存到特定文件夹

java - Struts 2 和 Chrome 扩展之间的不兼容性

java - 什么是NullPointerException,我该如何解决?

Java 初学者程序帮助(if、else 问题)

java - viewpager 将当前 View 置于顶部

java - jsp过滤器,获取页面名称

java - 没有找到适合 jdbc mysql 的驱动程序

java - struts2中的prepare拦截器是如何工作的?

java - Struts2 - 如何使用 <s :url> inside <s:select> to create hyperlinks?

java - ChronicleMap 中的多重 map