Chciałbym uzyskać dostęp do obiektu HttpServletRequest wniosku pochodzącego z rezolwerem zwyczaj InternalResourceViewResolver bazie. Czy istnieje prosty sposób na zrobienie tego? Używam Spring 2.5 tutaj.Wiosna: dostęp do HttpServletRequest w zwyczaju ViewResolver
5
A
Odpowiedz
12
Interfejs ViewResolver
nie jest dostarczany z aktualnego zapytania, a więc ani robić implementacje niego.
Jednak masz możliwość pobierania bieżącego żądania od RequestContextHolder
, która wykorzystuje zmienne wątku związanego do przechowywania rzeczy jak żądanie, ale nie całkiem:
((ServletRequestAttributes)RequestContextHolder.currentRequestAttributes()).getRequest();
dzięki. To załatwia sprawę. Jakiekolwiek skutki uboczne tej techniki powinienem być świadomy? –
Nie skutków ubocznych per se, ale należy pamiętać, że posiadacz kontekst jest inicjowany przez DispatcherServlet. Tak długo, jak twoje wnioski przez to przechodzą, powinieneś być w porządku, o ile nie zaczniesz robić pyskatych rzeczy z gwintowaniem tła. – skaffman