Pergunta

Eu quero mapear um Servlet para URLs terminando em /, Curti /user/register/, /user/login/, mas não qualquer outro recurso sob esse caminho, não /*.

eu tentei /*/, mas não funciona.

Foi útil?

Solução

Posso estar errado, mas não tenho certeza se isso é possível. O curinga * é usado apenas no final dos padrões de URL:

# this is a valid pattern to match anything after root:
*/
# this does not match anything because nothing can come after *
/*/
# this would match anything after the . that was htm
*.htm

Outras dicas

Mapa a Filter sobre /* e deixe determinar se a solicitação precisa ser passada pelo servlet ou não.

if (request.getRequestURI().endsWith("/")) {
    request.getRequestDispatcher("/servleturl").forward(request, response);
} else {
    chain.doFilter(request, response);
}

Dessa forma, você pode simplesmente mapear o desejado Servlet sobre /servleturl.

Welcome-File List é o que você está procurando. Sob a lista de chamas de boas-vindas, você pode especificar uma lista de arquivos de boas-vindas (cada um com sua própria etiqueta de arquivo de boas-vindas). Quando o URL da solicitação termina com /, o aplicativo procuraria a presença de um desses arquivos que você mencionou na lista de fileiras de boas-vindas (na ordem que você especificou lá, eu acho) sob a pasta apontada pelo URL, e servir esse recurso.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top