私は次のマッピングがあります。オプションのパス変数
@RequestMapping(value = "/{first}/**/{last}", method = RequestMethod.GET)
public String test(@PathVariable("first") String first, @PathVariable("last")
String last) {}
次のURIのために:
foo/a/b/c/d/e/f/g/h/bar
foo/a/bar
foo/bar
マップのfooへの最初のとバーを最後にになり、正常に動作します。上
@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) {}
プリティ・スタック:(最後のURIの例のように)何の真ん中がない場合
私が希望することは、単一パスのparamにfooとbarの間のすべてをマッピングし、何か、またはnullであります私が{middle:。*}のような単純なものであることを期待していたので、は/ foo/a/barに、または{middle:(。* /)*}にはマップされません。
は、正規表現パターンを適用する「/」前時AntPathStringMatcherのトークン化していますか? (交差する/不可能なパターンを作る)、あるいは解決策がありますか?
FYIこれは春3.1M2
これであるが@RequestMapping controllers and dynamic URLsに似ているようですが、私はそこに解決策を見ていません。