模拟spring的控制器:消息标签?

时间:2010-08-19 20:42:14

标签: java jsp spring-mvc jsp-tags

我正在为我的网页设计帮助/提示系统,我想基于jQuery的上下文帮助。

我的想法是,我会在事件上发布请求,并在特殊div中显示给出的回复。

我希望获得与< spring:message> 标记类似的行为,发布消息代码并获取本地化消息的字符串表示形式。如果它会使用相同的资源,那就太好了。

有没有办法从Controller调用此标记? (这个标签后面有Java代码)或者模仿这个标签控制器端的最佳方法是什么?

2 个答案:

答案 0 :(得分:8)

在Teja Kantamneni的帮助下,我带着这个控制器


@Controller
public class HelpController {
    protected Log log = LogFactory.getLog(getClass());

    @Autowired  
    private MessageSource messageSource;

    @RequestMapping(value = "ajax/gethelp")
    public @ResponseBody String handleGetHelp(Locale loc, String code) {
        return messageSource.getMessage(code, null, loc);
    }
}

答案 1 :(得分:2)

使用ResourceBundleMessageSource声明消息,然后自动装配/注入控制器。

<bean id="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource"            p:basename="messages"/>

或者您可以使用util: properties加载属性文件。

<util:properties id="jdbcConfiguration" location="classpath:com/foo/jdbc-production.properties"/>

然后使用id访问控制器中的此资源。