Una solicitud coincide con múltiples asignaciones de servlet, ¿qué servlet se ejecutará?
Procesamiento de mapeo de servlets
Descripción detallada: código fuente relacionado con el procesamiento de Tomcat: StandardContext.java.
/**
*?¿Adición? ¿respuesta? ¿Nuevo? servlet? Cartografía,? ¿reemplazar? ¿Hay alguno? ¿existente? ¿Cartografía? ¿Para
*?¿Ese? ¿Designado? modelo.
*
*?@param? ¿patrón? URL? ¿patrón? ¿A dónde ir? ¿Sí? Plan
*?@param? ¿nombre? ¿nombre? ¿de? ¿eso? ¿corresponder? servlet? ¿A dónde ir? Ejecutar
*?@param? jspWildCard? ¿En realidad? ¿si? ¿nombre? ¿Identificar? ¿eso? ¿JspServlet
*? Entonces, ¿qué? ¿patrón? ¿Incluir? ¿respuesta? Comodín;? ¿Falso? De lo contrario
*
*?@Excepción? ¿Excepción de argumento ilegal? ¿si? ¿eso? ¿Designado? servlet? ¿Cuál es el nombre
*? ¿No es así? ¿Conocido? ¿A dónde ir? ¿este? Contexto
*/
¿Público? ¿Vacío? addServletMapping(¿Cadena? ¿Patrón? ¿Cadena? Nombre,
¿Booleano? jspWildCard)? {
//?¿Verificación? ¿eso? ¿Propuesta? Dibujo
¿Y si? (findChild(nombre)?==?vacío)
¿Lanzar? ¿Nuevo? IllegalArgumentException
(sm . getstring(" contexto estándar . mapa de servlet . nombre ", nombre));
¿Formato? =?adjustURLPattern(RequestUtil.URL decode(patrón));
¿Si? (!validateURLPattern(patrón))
¿Lanzar? ¿Nuevo? IllegalArgumentException
(sm . getstring(" contexto estándar . mapa de servlet . patrón ", patrón));
//? ¿Suplemento? ¿este? ¿Cartografía? ¿A dónde ir? ¿Nuestro? ¿Registrado? Configuración
¿Sincronizar? (servletMappings)? {
¿Cadena? ¿Nombre 2? =?(cadena)? asignaciones de servlet . get(pattern);
¿Si? (¿Nombre 2?!=?nulo)? {
//?¿No? ¿Está permitido? ¿Más? ¿Comparar? ¿uno? servlet? ¿abierto? ¿eso? ¿Mismo? ¿patrón? -Mira el procesamiento aquí.
¿Papel de regalo? ¿Papel de regalo? =?(papel de regalo)? encontrar niño(nombre 2);
wrapper.remove mapeo(patrón);
mapper.removeWrapper(patrón);
}
servletMappings.put(patrón, nombre);
}
¿Papel de regalo? ¿Papel de regalo? =?(papel de regalo)? findChild(nombre);
wrapper.addMapping(patrón);
//?¿Actualizar? ¿contexto? Mapper
mapper.addWrapper(modo, contenedor, ?jspWildCard);
fireContainerEvent(" addServletMapping ", patrón);
}