Filtros - <url-pattern>

3 respostas
E

Pessoal Boa Noite,

Tenho um filtro para controlar acesso às minhas páginas.
Pretendo controlar duas coisas :

*.do
*.jsp

Quando fasso o mapeamento do meu filtro e seto as url-patterns, ele só assume a ultima ou seja.

Meu código

<filter>
     <filter-name>FilterSession</filter-name>
     <filter-class>br.com.peoplemais.servlet.filters.FilterSessionRequest</filter-class>
    </filter>
 
   <filter-mapping>
     <filter-name>FilterSession</filter-name>
     <url-pattern>*.do</url-pattern>
     <url-pattern>*.jsp</url-pattern>
   </filter-mapping>

Desta forma, ele só filtra o que é *.jsp - e o que é *.do ele ignora.

Alguém sabe como resolver isso ?

Eduardo Lima
[email removido]

3 Respostas

Rafael_Nunes

Não existe já algum outro mapeamento para *.do?

P

Pelo DTD do web.xml:

Ou seja, só pode haver um elemento em cada
Provavelmente seu container está configurado para não fazer a validação do web.xml de forma “rigorosa” e, por isto, ele simplesmente ignora a primeira .

Para resolver, use dois filter-mappings:

<filter-mapping>
     <filter-name>FilterSession</filter-name>
     <url-pattern>*.jsp</url-pattern>
   </filter-mapping>  

   <filter-mapping>
     <filter-name>FilterSession</filter-name>
     <url-pattern>*.do</url-pattern>
   </filter-mapping>
E

Era isso mesmo meu amigo.

Obrigado

Criado 9 de maio de 2006
Ultima resposta 10 de mai. de 2006
Respostas 3
Participantes 3