当利用Velocity和Struts一同开发web应用时,可能会遇到这样的问题,即.vm文件中无法使用Struts的标签。虽然Velocity的模板引擎以及它强大的语句可以使我们毫不犹豫地抛弃Struts的标签,但有时候,我们仍然需要在.vm文件中引用Struts的国际化文件ApplicationResources.properties,能否做到呢?答案是肯定的。替代的办法是使用toolbox.xml(关于toolbox.xml的配置请参照
http://www.junesky.org/blog/article.asp?id=144),以下是一个toobox.xml文件:
程序代码<?xml version="1.0"?>
<toolbox>
<tool>
<key>link</key>
<scope>request</scope>
<class>
org.apache.velocity.tools.struts.StrutsLinkTool
</class>
</tool>
<tool>
<key>msg</key>
<scope>request</scope>
<class>
org.apache.velocity.tools.struts.MessageTool
</class>
</tool>
<tool>
<key>errors</key>
<scope>request</scope>
<class>
org.apache.velocity.tools.struts.ErrorsTool
</class>
</tool>
<tool>
<key>form</key>
<scope>request</scope>
<class>
org.apache.velocity.tools.struts.FormTool
</class>
</tool>
<tool>
<key>tiles</key>
<scope>request</scope>
<class>
org.apache.velocity.tools.struts.TilesTool
</class>
</tool>
<tool>
<key>validator</key>
<scope>request</scope>
<class>
org.apache.velocity.tools.struts.ValidatorTool
</class>
</tool>
</toolbox>StrutsLinkTool:针对 Struts 的 LinkTool 专用版本,提供了 setAction() 和 setForward() 访问预先配置的活动映射。
MessageTool:提供对 Struts 国际化支持的访问,尤为特别的是依赖于语言的消息资源。
ErrorsTool:处理 Struts 错误消息,包括对国际化的支持。
FormTool:访问 Struts 的表单 beans。
TilesTool:提供对 Struts 1.1 Tiles 扩展支持的访问。
ValidatorTool:提供对 Struts 1.1 Validator 扩展的访问,生成代码验证表单输入字段。
现在,我们有一个编译好了的文件:ApplicationResources_zh_CN.properties。它的内容如下:
name=六月天
在.vm文件中,就可以这样写:
$!{msg.get(“name”)}
posted on 2007-11-02 17:08
缘来如此 阅读(392)
评论(0) 编辑 收藏 所属分类:
Velocity