首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用Spring和Tiles2本地化页面标题?

如何使用Spring和Tiles2本地化页面标题?
EN

Stack Overflow用户
提问于 2010-12-15 17:17:05
回答 2查看 3.8K关注 0票数 10

我有一个Spring应用程序,它使用Tiles作为视图层。所以我所有的页面定义都是这样的:

代码语言:javascript
复制
<definition name="main.page" template="/tiles/layout.jsp">
    <put-attribute name="title" value="Page Title"/>
    <put-attribute name="header" value="/tiles/header.jsp"/>
    <put-attribute name="body" value=""/>
    <put-attribute name="footer" value="/tiles/footer.jsp"/>
</definition>

<definition name="welcome.page" extends="main.page">
    <put-attribute name="title" value="Main Page"/>
    <put-attribute name="body" value="/pages/welcome.jsp"/>
</definition>

设置页面标题的代码为:

代码语言:javascript
复制
<title><tiles:getAsString name="title"/></title>

我想用Spring标签进行本地化:

代码语言:javascript
复制
<spring:message>

有什么“最佳实践”可以做到这一点吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-12-15 23:32:34

你有没有尝试过把消息键放在tiles变量中,并将它用作spring消息标签的键。

大概是这样的:

代码语言:javascript
复制
<definition name="welcome.page" extends="main.page">
    <put-attribute name="titleKey" value="page.main.title"/>
    <put-attribute name="body" value="/pages/welcome.jsp"/>
</definition>

jsp:

代码语言:javascript
复制
<set var"titleKey"><tiles:getAsString name="titleKey"/></set>
<title><spring:message code=${titleKey} /></title>
票数 18
EN

Stack Overflow用户

发布于 2013-11-27 22:09:53

前面的答案包含几个小错误

tiles.xml

代码语言:javascript
复制
<definition name="main" template="/WEB-INF/jsp/template.jsp">
        <put-attribute name="titleKey" value="main.title" />
    <put-attribute name="body" value="/WEB-INF/jsp/main.jsp" />
</definition>

jsp (/WEB-INF/jsp/template.jsp)

代码语言:javascript
复制
<c:set var="titleKey"><tiles:getAsString name="titleKey"/></c:set>
<title><spring:message code="${titleKey}"></spring:message> </title>
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4448342

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档