Avec Spring 3.0, puis-je avoir une variable de chemin facultative?
Par exemple
@RequestMapping(value = "/json/{type}", method = RequestMethod.GET)
public @ResponseBody TestBean testAjax(
HttpServletRequest req,
@PathVariable String type,
@RequestParam("track") String track) {
return new TestBean();
}
Ici, je voudrais /json/abc
ou /json
appeler la même méthode.
Une solution de contournement évidente à déclarer type
comme paramètre de demande:
@RequestMapping(value = "/json", method = RequestMethod.GET)
public @ResponseBody TestBean testAjax(
HttpServletRequest req,
@RequestParam(value = "type", required = false) String type,
@RequestParam("track") String track) {
return new TestBean();
}
et puis /json?type=abc&track=aa
ou /json?track=rr
fonctionnera