web.xml lt;filter-mapping>No quiero filtrar archivos html, ¿cómo lo configuro?
No uses /* para interceptar todo, solo intercepta lo que quieras interceptar
Similar al siguiente método de filtrado
< init-param
init-param>
< nombre-filtro>encodingFilter
p>
En filtro Compruébalo en la clase. Si termina en .html, no se filtrará.
HttpServletRequest req = (HttpServletRequest)request;
//Dado que el filtro está configurado en web.xml para filtrar todas las solicitudes, las URL que no necesitan filtrarse se pueden excluir
String reqURI = req.getRequestURI();
if(reqURI.endsWith(".html")) chain.doFilter(solicitud, respuesta);
HttpServletRequest req = (HttpServletRequest)request
//Dado que el filtro está configurado en web.xml para filtrar todas las solicitudes, las URL que no necesitan filtrarse se pueden excluir
String reqURI = req.getRequestURI();
if(reqURI.endsWith(".html")) chain.doFilter(solicitud, respuesta);
¿Es la cadena la siguiente? método de filtrado?
doFilter public void (solicitud ServletRequest,
respuesta ServletResponse,
cadena FilterChain) arroja IOException, ServletException{
Además, si (Es reqURI.endsWith(".html")) verdadero o falso
HttpServletRequest req = (HttpServletRequest)request
// Dado que el filtro está configurado en web.xml para filtrar; todas las solicitudes, las URL que no necesitan filtrarse se pueden excluir
String reqURI = req.getRequestURI()
if(reqURI.endsWith(".html")) chain; .doFilter(solicitud, respuesta);
¿Es cadena la cadena en el siguiente método de filtrado?
doFilter public void (solicitud ServletRequest,
respuesta ServletResponse,
cadena FilterChain) arroja IOException, ServletException{
Además, si (¿Es reqURI.endsWith(".html")) verdadero o falso?
Esta es la cadena. Este juicio es para determinar si la ruta que solicitó termina en .html.
HttpServletRequest req = (HttpServletRequest)request;
//Dado que el filtro está configurado en web.xml para filtrar todas las solicitudes, las URL que no necesitan filtrarse se pueden excluir
String reqURI = req.getRequestURI();
if(reqURI.endsWith(".html")) chain.doFilter(solicitud, respuesta);
La cadena está en los siguientes métodos de filtrado ¿Cadena?
doFilter public void (solicitud ServletRequest,
respuesta ServletResponse,
cadena FilterChain) arroja IOException, ServletException{
Además, si (¿Es reqURI.endsWith(".html")) verdadero o falso?
Esta es la cadena. Este juicio es para determinar si la ruta que solicitó termina en .html.
Informe de errores
java.lang.IllegalStateException: getWriter() ya ha sido llamado para esta respuesta
public void doFilter(solicitud ServletRequest, respuesta ServletResponse,
p>
Cadena FilterChain) arroja IOException, ServletException {
//Convierte ServletRequest y ServletResponse en tipos reales
HttpServletRequest req = (HttpServletRequest)request;
String reqURI = req.getRequestURI();
if(reqURI.endsWith(".do")) chain.doFilter(solicitud, respuesta
System.out .println(reqURI);
chain.doFilter(request, Response);
}
El código original que usé aquí, sí. míralo Descarga el lugar donde usas la respuesta
//Convierte ServletRequest al tipo real
HttpServletRequest req = (HttpServletRequest)request
String reqURI =; req.getRequestURI();
if(reqURI.endsWith(".html")) chain.doFilter(solicitud, respuesta
else{
); return;
}
Esto es lo que acabo de probar. Solo puede pasar el que termina en html.