首页 > 代码库 > velocity中$springMacroRequestContext.getMessage($code)

velocity中$springMacroRequestContext.getMessage($code)

在Java国际化(i18n)中,

vm页面显示内容需要使用 #springMessage("title")

实际运行时发现页面输出$springMacroRequestContext.getMessage($code)。看了一下源代码,#springMessage是一个宏,在spring.vm中定义为

#macro( springMessage $code )$springMacroRequestContext.getMessage($code)#end

原因是因为未找到$springMacroRequestContext...

解决方法:在我们定义视图resolver中加入对spring宏的支持

<bean id="viewResolver" class="org.springframework.web.servlet.view.velocity.VelocityViewResolver">        ...        <property name="exposeSpringMacroHelpers" value="http://www.mamicode.com/true"/>    </bean>

 

 

 

velocity中$springMacroRequestContext.getMessage($code)