liferay中的Velocity使用分析(1)

    liferay中使用Velocity進行themes設定,下面來分析一下它的應用過程
    1.我們先看看VelocityVariables.java這個類,它定義了4個方法
      public static void insertHelperUtilities(VelocityContext vc, String[]         restrictedVariables)({...}
      這個方法主要在Journal中使用,主要是將一些util的變量加入至Velocity中
      public static void insertVariables(
        VelocityContext vc, HttpServletRequest req) {...}   
      此方法使用的最多,用來定義所有變量,分別在VelocityFilter.java,RuntimePortletUtil.java和        ThemeUtil.java中使用
      private static void _insertHelperUtility(
        VelocityContext vc, String[] restrictedVariables, String key,
        Object value) {...}
      在insertHelperUtilities方法中使用的內部方法
      private static String _insertTilesVariables(
        VelocityContext vc, HttpServletRequest req, String attributeId,
        String attributeName) {...}   
      在insertVariables方法中使用的內部方法,定義Tiles attributes變量的方法
   2.再來看看webapps/ROOT/html/themes/_unstyled/templates/init.vm文件
   #set ($theme_display = $themeDisplay)
   #set ($portlet_display = $portletDisplay)
   ...... 
   定義變量,分別將VelocityVariables中定義的變量值取出供其他vm文件使用
  
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章