国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

Spring MVC 4.0 + Velocity Tools 2.0遇到的問題

2019-11-08 03:12:34
字體:
供稿:網(wǎng)友

1、SPRing MVC 4.0及更高版本不建議使用Velocity模板引擎,為了繼承Velocity并使用Velocity Tools,需要重寫viewClass,如下:

import org.apache.velocity.context.Context;import org.apache.velocity.tools.Scope;import org.apache.velocity.tools.ToolManager;import org.apache.velocity.tools.ToolboxFactory;import org.apache.velocity.tools.view.ViewToolContext;import org.springframework.web.servlet.view.velocity.VelocityLayoutView;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java.util.Map;public class VelocityLayoutToolbox2View extends VelocityLayoutView { private static ToolboxFactory toolboxFactory = null; @Override protected Context createVelocityContext(Map<String, Object> model, HttpServletRequest request, HttpServletResponse response) throws Exception { // Create a ChainedContext instance. ViewToolContext vtc; vtc = new ViewToolContext(getVelocityEngine(), request, response, getServletContext()); vtc.putAll(model); if (toolboxFactory == null) { ToolManager toolManager = new ToolManager(); toolManager.setVelocityEngine(getVelocityEngine()); toolManager.configure(getServletContext().getRealPath(getToolboxConfigLocation())); toolboxFactory = toolManager.getToolboxFactory(); } if (this.getToolboxConfigLocation() != null) { if (toolboxFactory.hasTools(Scope.REQUEST)) { vtc.addToolbox(toolboxFactory.createToolbox(Scope.REQUEST)); } if (toolboxFactory.hasTools(Scope.application)) { vtc.addToolbox(toolboxFactory.createToolbox(Scope.APPLICATION)); } if (toolboxFactory.hasTools(Scope.session)) { vtc.addToolbox(toolboxFactory.createToolbox(Scope.SESSION)); } } return vtc; }}

重寫后,在applicationContext.xml文件中配置viewClass,如下:

<bean id="viewResolver" class="org.springframework.web.servlet.view.velocity.VelocityLayoutViewResolver"> <property name="suffix" value=".html" /> <property name="cache" value="false" /> <property name="contentType" value="text/html;charset=utf-8" /> <!-- 日期函數(shù)名稱 --> <property name="dateToolAttribute" value="date" /> <!-- 數(shù)字函數(shù)名稱 --> <property name="numberToolAttribute" value="number" /> <property name="layoutUrl" value="layout/default.vm" /> <property name="viewClass" value="com.acs.survey.util.VelocityLayoutToolbox2View" /> <property name="toolboxConfigLocation" value="/WEB-INF/velocity-tools.xml" /> </bean>

2、Velocity Tools 2.0的配置文件格式和低版本的不同,這是個(gè)大坑!!!具體如下: ===低版本格式

<toolbox> <tool> <key>SSOPermission</key> <scope>application</scope> <class>com.baomidou.springwind.common.SSOPermissionTool</class> </tool> <tool> <key>date</key> <scope>application</scope> <class>org.apache.velocity.tools.generic.DateTool</class> </tool> <tool> <key>math</key> <scope>application</scope> <class>org.apache.velocity.tools.generic.MathTool</class> </tool> <tool> <key>number</key> <scope>application</scope> <class>org.apache.velocity.tools.generic.NumberTool</class> </tool> <tool> <key>render</key> <scope>application</scope> <class>org.apache.velocity.tools.generic.RenderTool</class> </tool> <tool> <key>esc</key> <scope>application</scope> <class>org.apache.velocity.tools.generic.EscapeTool</class> </tool> <tool> <key>alternator</key> <scope>application</scope> <class>org.apache.velocity.tools.generic.AlternatorTool</class> </tool> <tool> <key>parser</key> <scope>application</scope> <class>org.apache.velocity.tools.generic.ValueParser</class> </tool> <tool> <key>sorter</key> <scope>application</scope> <class>org.apache.velocity.tools.generic.SortTool</class> </tool></toolbox>

===2.0格式

<tools> <toolbox scope="application"> <tool class="com.acs.survey.util.PermissionTool" /> <tool class="org.apache.velocity.tools.generic.DateTool" /> <tool class="org.apache.velocity.tools.generic.MathTool" /> <tool class="org.apache.velocity.tools.generic.NumberTool" /> <tool class="org.apache.velocity.tools.generic.RenderTool" /> <tool class="org.apache.velocity.tools.generic.EscapeTool" /> <tool class="org.apache.velocity.tools.generic.AlternatorTool" /> <tool class="org.apache.velocity.tools.generic.ValueParser" /> <tool class="org.apache.velocity.tools.generic.SortTool" /> </toolbox> <toolbox scope="request"> <tool class="org.apache.velocity.tools.view.LinkTool" /> </toolbox></tools>
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 蕲春县| 甘泉县| 杭锦旗| 石家庄市| 广南县| 吉安县| 威海市| 鄯善县| 福安市| 湟源县| 昌乐县| 阳信县| 雷州市| 铜梁县| 汨罗市| 闽侯县| 阳原县| 岑巩县| 郴州市| 永登县| 松江区| 两当县| 龙泉市| 平谷区| 资溪县| 日土县| 广宗县| 长泰县| 开化县| 潜江市| 永安市| 康保县| 新源县| 永吉县| 晋城| 延安市| 寿光市| 湾仔区| 青田县| 保康县| 浙江省|