Padrões de URL do FacesServlet
Não sei ao certo o que estou fazendo de errado aqui, mas quando coloco o contexto de rostos duas vezes no URL, ele ignora todos os meus títulos de domínio.
Meu padrão de URL:
<servlet-mapping>
<servlet-name>Faces</servlet-name>
<url-pattern>/faces/*</url-pattern>
</servlet-mapping>
Restrição de segurança
<security-constraint>
<display-name>ADMIN</display-name>
<web-resource-collection>
<web-resource-name>Protected Admin Area</web-resource-name>
<description/>
<url-pattern>/faces/admin/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<description/>
<role-name>ADMIN</role-name>
</auth-constraint>
<user-data-constraint>
<description/>
<transport-guarantee>NONE</transport-guarantee>
</user-data-constraint>
</security-constraint>
Então, quando eu vou:http://domain.com/faces/admin/index.xthml eu recebo a resposta adequada que estou procurando.
Mas se eu for:http://domain.com/faces/faces/admin/index.xhtml ele me permite entrar independentemente do fato de que o servlet está programado para / admin * Estou assumindo que o * no final do admin é o que está causando isso. Mas como resolver isso para onde domain.com/faces/faces é inválido e apenas domain.com/faces é válido?
Não consigo encontrar mais ninguém enfrentando esse problema. Então eu devo estar fazendo algo errado.
Obrigado