Я столкнулся с проблемой при разработке фильтра с днем CQ в моем проекте. Мой код работает с методом forwardDispatcher. Но с response.sendRedirect() он не работает.sendRedirect не работает
if (servletRequest instanceof SlingHttpServletRequest) {
HttpServletRequest httpRequest = (HttpServletRequest) servletRequest;
HttpServletResponse httpResponse = (HttpServletResponse) servletResponse;
String uri = httpRequest.getRequestURI();
if(uri.startsWith("/content")){
Cookie[] cookies = httpRequest.getCookies();
boolean found = false;
for (Cookie cookie : cookies) {
log.info("Cookies in filter: " + cookie.getName());
if("LtpaToken2".equals(cookie.getName())){
log.info("LTPA token found ");
found = true;
break;
}
}
if(found){
filterChain.doFilter(servletRequest, servletResponse);
}
else{
httpResponse.sendRedirect("http://www.google.com");
}
}else{
filterChain.doFilter(servletRequest, servletResponse);
}
log.info("Message URL ::"+httpRequest.getRequestURL().toString());
log.info("URI ::"+uri);
}
Поэтому, пожалуйста, решите мою проблему, это очень полезно.
С уважением Narsi р
Нужно ли использовать SlingHttpServletRequest для HttpServletRequest? SlingHttpServletRequest расширяет HttpServletRequest. – antonyh
Можете ли вы представить контекст для вышеуказанного кода? Что это за класс/метод? – shsteimer