在Struts中如果使用了Titles标签,那么在模板中就不能够直接对title部分国际化,基本的原则是先用<titles:getAsString name="title"/>把值从调用此模板的jsp或者模块中取出来,然后赋给一个变量“pageTitle”,然后通过这个变量用<bean:message name="pageTitle" />再把资源文件中的多国语言的title描述取出来。
模板文件:
<head>
<bean:define id="pageTitle">
<tiles:getAsString name="title"/>
</bean:define>
<title><bean:message name="pageTitle" /></title>
</head>
调用模板的jsp文件:
<tiles:insert page="layout.jsp" flush="true">
<tiles:put name="title" value="index.title" type="string"/>
<tiles:put name="sidebar" value="sidebar.htm"/>
<tiles:put name="header" value="header.htm"/>
<tiles:put name="content" value="indexContent.jsp"/>
<tiles:put name="footer" value="footer.htm"/>
</tiles:insert>
资源文件:
index.title=首页