Mam następujące odwzorowanie:opcjonalne zmienne ścieżki w Spring-MVC RequestMapping URITemplate
@RequestMapping(value = "/{first}/**/{last}", method = RequestMethod.GET)
public String test(@PathVariable("first") String first, @PathVariable("last")
String last) {}
Które z następujących URI:
foo/a/b/c/d/e/f/g/h/bar
foo/a/bar
foo/bar
mapuje foo do pierwszy i bar do ostatni i działa dobrze.
Co chciałbym to coś, co odwzorowuje wszystko między foo i bar w jednym param ścieżki lub null, jeśli nie ma w srodku (jak w ostatnim przykładzie URI):
@RequestMapping(value = "/{first}/{middle:[some regex here?]}/{last}",
method = RequestMethod.GET)
public String test(@PathVariable("first") String first, @PathVariable("middle")
String middle, @PathVariable("last") String last) {}
Dość zatrzymany na regex, ponieważ miałem nadzieję, że coś prostego, jak {middle:. *}, które tylko mapuje do/foo/a/bar, lub {middle: (. * /) *}, które wydaje się mapować na nic.
Czy AntPathStringMatcher tokenizuje na "/" przed zastosowaniem wzorów regex? (tworzenie wzorców, które przekraczają/niemożliwe) lub czy istnieje rozwiązanie?
FYI to w Spring 3.1M2
to wydawać podobne do @RequestMapping controllers and dynamic URLs ale nie widzę tam rozwiązania.