Я написал метод веб-службы REST setToken(@Context HttpServletRequest request, @Context HttpServletResponse response, @PathParam("token") String token), HeaderFilter и SampleServlet. Ниже приведен класс веб-службы `@Path("/service") public class Service {
/*@Context
private ServletContext servletContext;
@Context
private HttpServletRequest request;
@Context
private HttpServletResponse response;*/
@Path("/val/{token}")
@GET
@Produces("application/xml")
public String setToken(@Context HttpServletRequest request, @Context HttpServletResponse response, @PathParam("token") String token) throws ServletException, IOException {
String value=token;
if(request==null){
System.out.println("Request null");
}
System.out.println("Token: " + value);
if(request!=null){
request.setAttribute("param", value);
Wrapper requestWrapper = new Wrapper(request);
requestWrapper.addHeader("Authorization", token);
request.getRequestDispatcher("/secure").include(requestWrapper, response);
}
return "<token>"+ "<value>"+value+" token value"+"</value>" + "</token>";
}
}`
Из метода веб-службы setToken я вызываю SampleServlet, используя request.getRequestDispatcher("/secure").include(request, response);, и URL-адрес, который я использую: http://localhost:8080/xxxx/xxxx/service/val/zzzz. zzzz — значение, которое необходимо передать. Шаблон URL для HeaderFilter и SampleServlet — /secure. Теперь проблема в том, что HeaderFilter не вызывается, а вызывается непосредственно «SampleServlet». Я что-то не так делаю???? Пожалуйста, помогите мне пройти через это.