在webwork中使用freemarker做view,实现i18n
对于没有参数的情况,比较好解决
假定properties里面这样写
test=测试信息
在ftl中可以使用ww的taglib,也可以使用ftl语法
${action.getText("test")}
<@ww.text name="'test'" />
对于有参数的,就比较麻烦了,比如properties定义为
test=测试信息{0},{1}
用taglib是没问题的,跟jsp中间差不多
<@ww.text name="'test'" >
<@ww.param>WebWork</@ww.param>
<@ww.param>FreeMarker</@ww.param>
</@ww.text>
用ftl语法就没办法了,google半天,最后发现一个变通的方法(实际上还是用了taglib)
<@ww.set name="list" value="{'WebWork','Freemarker'}" scope="page"/>
${action.getText("test",list)}
参考:http://forums.opensymphony.com/message.jspa?messageID=3628