Spring MVC在一个请求中返回多个对象

时间:2013-02-25 12:39:28

标签: java spring spring-mvc web request

在我的控制器中我有这些ff方法

  @RequestMapping("/countryList.html")
  @ModelAttribute("countries")
  public Collection<Country> getCountries() {
    return worldService.getAllCountries();
  }

  @RequestMapping("/countryList.html")
  public String getName() {
    return viewers_name;
  }

我试图做的是在countryList.html中,它将返回国家和查看它的当前用户的名称,但是在访问countryList.html时它返回了我的异常

Ambiguous handler methods mapped for HTTP path '/countryList.html': {public java.lang.String levelup.world.web.CountryController.getName(), public java.util.Collection levelup.world.web.CountryController.getCountries()}.

我如何解决此问题?

2 个答案:

答案 0 :(得分:2)

因为您有相同的请求映射到不同的方法。异常消息很简单

答案 1 :(得分:2)

@RequestMapping(“/ countryList.html”)对于mehod应该是唯一的。你如何将这个请求映射到两种方法。

根据你的意见: -

  @RequestMapping(value = "/countryList.html")
public Collection<Country> getCountries(ModelMap model) {     
        model.addAttribute("countries", countryObject);
   return viewName;

     }

或者在config中定义jsonView以返回json对象以进行ajax调用

 @RequestMapping(value = "/countryList.html")
public Collection<Country> getCountries(ModelMap model) {     
        model.addAttribute("countries", countryObject);
   return jsonView;

     }