J'essaye d'écrire un filtre qui peut récupérer l'URL de demande, mais je ne suis pas sûr de savoir comment le faire.Comment puis-je obtenir l'URL de la requête à partir d'un filtre Java?
Voici ce que j'ai jusqu'à présent:
import javax.servlet.*;
import javax.servlet.http.HttpServletRequest;
import java.io.IOException;
public class MyFilter implements Filter {
public void init(FilterConfig config) throws ServletException { }
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws ServletException, IOException {
chain.doFilter(request, response);
String url = ((HttpServletRequest) request).getPathTranslated();
System.out.println("Url: " + url);
}
public void destroy() { }
}
Quand je frappe une page sur mon serveur, la seule sortie que je vois est « Url: null ».
Quelle est la manière correcte d'obtenir l'URL demandée à partir d'un objet ServletRequest donné dans un filtre?
'getRequestURL()' renvoie 'StringBuffer', pas' String'. – BalusC
@BalusC, je l'ai réalisé à partir des docs, j'ai mis à jour mon post. –
Il est préférable de considérer le modèle de null 'queryString'. –