我目前正在为构建在Struts 2上的应用程序开发语言包。语言包在属性文件中定义,该文件将由前端JSP通过JSTL(FMT标记)访问。
我正在尝试实现字符串格式化,即将Struts值插入通过FMT标记检索的句子字符串中。
我的属性文件中定义了什么:
userprofile.link.text = <a href="{0}">Click here</a> to view your profile page.
从JSP方面来说,
<fmt:message key="userprofile.link.text">
<fmt:param value='/profile/<s:property value="userBean.id"/>'/>
</fmt:message>
但是,链接无法正确呈现。我如何实现这一目标?
答案 0 :(得分:1)
JSTL使用${}
(EL);
Struts2 ValueStack通过StrutsRequestWrapper向JSTL公开:
所有Struts请求都包含在此类中,该类提供简单的JSTL可访问性。这是因为JSTL使用请求属性,因此该类委托给值栈[...]
那么这应该足够了:
<fmt:message key="userprofile.link.text">
<fmt:param value='/profile/${userBean.id}'/>
</fmt:message>