J'ai une application SmartGWT et un filtre dans lequel j'essaie de comprendre (lors de la connexion) si la demande doit être transmise (par exemple de bureau à mobile). Le code s'exécute et le navigateur fait une requête get mais n'obtient pas de réponse et ne fait pas de redirection. J'ai essayé avec http://google.com et cela n'a pas fonctionné trop ainsi cela doit être quelque chose d'autre.Mon response.sendRedirect ne fonctionne pas
public void doFilter(ServletRequest req, ServletResponse res,
FilterChain chain) throws ServletException, IOException {
HttpServletRequest request = (HttpServletRequest) req;
HttpServletResponse response = (HttpServletResponse) res;
HttpSession session = request.getSession();
WURFLHolder wurfl = (WURFLHolder) getFilterConfig().getServletContext().getAttribute(WURFLHolder.class.getName());
WURFLManager manager = wurfl.getWURFLManager();
Device device = manager.getDeviceForRequest(request);
boolean webBrowser = isWebBrowser(device);
String path = ((HttpServletRequest) request).getRequestURI();
boolean isBrowserOnMobile = true; // webBrowser && path.contains(MOBILE_REQ_PATH);
boolean isMobileOnDesktop = !webBrowser && path.contains(DESKTOP_REQ_PATH);
if (isBrowserOnMobile || isMobileOnDesktop) {
if (isBrowserOnMobile) {
path = "http://www.google.com";
} else {
path = "/PregledPredmeta/MobileAppEntryPoint.html";
}
response.encodeRedirectURL(path);
response.sendRedirect(path);
return;
......
Imprimez-vous quelque chose avant que cette méthode ne soit appelée? Si non, avez-vous des erreurs? – BackSlash