资源包Spring

时间:2009-11-08 01:00:50

标签: java spring internationalization spring-mvc

如何在从AbstractController扩展的类中的Spring MVC中访问资源包中的消息?

我试过getMessageSourceAccessor().getMessage("a.message"); 但它抛出了这个例外:

  

org.springframework.web.util.NestedServletException:   请求处理失败;嵌套   例外是   org.springframework.context.NoSuchMessageException:   代码下没有找到任何消息   locale'en'的'a.message'。

当我在jsp中执行相同操作时

<spring:message code="a.message"/>

1 个答案:

答案 0 :(得分:9)

您可以在org.springframework.web.servlet.support.RequestContext类中使用其中一个getMessage()方法变体。这样的事情有效:

protected ModelAndView handleRequestInternal(HttpServletRequest request, HttpServletResponse response) throws Exception {
    RequestContext ctx = new RequestContext(request);
    String messageFromBundle = ctx.getMessage("a.message");
}