随笔 - 31  文章 - 2  trackbacks - 0
当利用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

只有注册用户登录后才能发表评论。


网站导航: