Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring mvc 速度:#设置($var2=";#springMessage($var1)";)_Spring Mvc_Localization_Internationalization_Translation_Velocity - Fatal编程技术网

Spring mvc 速度:#设置($var2=";#springMessage($var1)";)

Spring mvc 速度:#设置($var2=";#springMessage($var1)";),spring-mvc,localization,internationalization,translation,velocity,Spring Mvc,Localization,Internationalization,Translation,Velocity,我想这样做: <head> <title> #set($windowTitleKey = $tiles.insertAttribute({'name':'window_title_key', 'ignore': true})) #set($translatedPageName = "#springMessage($windowTitleKey)") #springMessageText("SEO_page_title

我想这样做:

<head>
  <title>
    #set($windowTitleKey = $tiles.insertAttribute({'name':'window_title_key', 'ignore': true}))      
    #set($translatedPageName = "#springMessage($windowTitleKey)")        
    #springMessageText("SEO_page_title_default", [$translatedPageName])
  </title>
</head>

#set($windowTitleKey=$tiles.insertAttribute({'name':'window\u title\u key','ignore':true}))
#set($translatedPageName=“#springMessage($windowTitleKey)”)
#springMessageText(“搜索引擎优化页面标题默认值,[$translatedPageName])

第一个“set”行起作用,springMessageText行也起作用


这一行不起作用:
#set($translatedPageName=“#springMessage($windowTitleKey)”)
它将$translatedPageName设置为
$springMacroRequestContext.getMessage($code)


实现嵌套翻译目标的另一种方法是什么?

我最终需要编写一个自定义帮助程序。真麻烦。我期待着有一天完全放弃Velocity


在速度视图中:

#set($windowTitleKey = $tiles.insertAttribute({'name':'window_title_key', 'ignore': true}))
#set($translatedPageName = $TranslationsHelper.getTranslation("$windowTitleKey"))
#springMessageText("SEO_window_title_default", ["$translatedPageName"])

在translationHelper.java中:

    public class TranslationsHelper extends ReloadableResourceBundleMessageSource
    {    
            public static String getTranslation(String messageKey, Object[] args)
            {
                    MessageSource ms = getMessageSource();
                    Locale locale = LocaleContextHolder.getLocale();
                    return ms.getMessage(messageKey, args, locale);
            }
            public static MessageSource getMessageSource()
            {
                    WebApplicationContext webAppContext = ContextLoader.getCurrentWebApplicationContext();
                    return (MessageSource) webAppContext.getBean("messageSource");        
            }
    }
我知道#评估,但不知道我会在哪里/如何使用它。你说我应该怎么做?