Jak zaimplementować niestandardowe właściwości @RequestMapping
Jakoprzykład, braćmapowanie subdomen.
Ten artykuł:Zarządzanie wieloma domenami i subdomenami w Google App Engine dla tej samej aplikacji zaleca, aby rozwiązać poddomenę na filtrze i przypisać zmienną do nagłówków ServletRequest.
Następnie mapowanie będzie wyglądać tak:
<code>@RequestMapping(value = "/path", headers="subdomain=www") public String subsiteIndexPage(Model model,HttpServletRequest request) { ... } </code>
Jeśli chcielibyśmy utworzyć niestandardową właściwość @RequestMapping, taką jak subdomena, np. stworzyć mapowanie w ten sposób:
<code>@RequestMapping(value = "/some/action", subdomain = "www") public String handlerFunction(){ ... } </code>
powinniśmy nadpisać@RequestMapping @interface
definicja iprzesłonić RequestMappingHandlerMapping metody chronione, z naszą własną implementacją
(jak podano w JIRA: „Zezwalaj na niestandardowe warunki mapowania żądań SPR-7812„).
Czy to jest poprawne? Czy ktoś może podać podpowiedź, jak osiągnąć tę funkcjonalność?
Pomysł 1:
Jak sugerowano na oryginalnym wątku jira, ma stworzyć własną implementacjęRequestCondition
Jest projekt, który korzysta z tego rozwiązania dostępnego na github:https://github.com/rstoyanchev/spring-mvc-31-demo/
I powiązane pytanie SO:Dodawanie niestandardowych warunków żądania w Spring mvc 3.1
Może mapowanie jak@Subdomain("www")
dla obu typów i metod jest możliwe rozwiązanie?