Reputation: 45465
To get the HttpServletRequest
in an interceptor I used below code:
HttpServletRequest request =(HttpServletRequest) ActionContext.getContext().get(HTTP_REQUEST);
I tried to implement ServletRequestAware
in the interceptor but it did not worked.
Are there any better ways to get HttpServletRequest
in an Interceptor ?!
Upvotes: 7
Views: 12247
Reputation: 51711
You need to use ActionInvocation#getInvocationContext()
to retrieve your request.
public String intercept(ActionInvocation invocation) throws Exception {
ActionContext context = invocation.getInvocationContext();
HttpServletRequest request = (HttpServletRequest) context.get(ServletActionContext.HTTP_REQUEST);
// ...
}
Upvotes: 9
Reputation: 33
use
final HttpServletRequest request = (HttpServletRequest) ActionContext.getContext()
.get(ServletActionContext.HTTP_REQUEST);
it worked for me
Upvotes: 1
Reputation: 1
The servlet stuff you could get referencing servletConfig
interceptor. After this interceptor is invoked you could get servlet stuff from ServletActionContext
.
HttpServletRequest request = ServletActionContext.getRequest();
Upvotes: 6
Reputation: 1853
you will get ActionInvoction try getInvocationContext()
it will return instance of "ActionContext" try .get(HTTP_REQUEST);
on this.
or
use
ServletActionContext.getRequest()
Upvotes: 0