que estoy haciendo la siguiente petición del cliente:¿Cómo hacer coincidir un Spring @RequestMapping con @pathVariable que contiene "/"?
/search/hello%2Fthere/
donde el término de búsqueda "hola/no" se ha urlencoded.
En el servidor que estoy tratando de igualar esta URL utilizando la siguiente asignación de solicitud:
@RequestMapping("/search/{searchTerm}/")
public Map searchWithSearchTerm(@PathVariable String searchTerm) {
// more code here
}
Pero estoy recibiendo el error 404 en el servidor, por lo no tienen ningún partido de la URL. Noté que la URL se decodifica antes de que Spring la obtenga. Por lo tanto, está tratando de hacer coincidir/buscar/hello/there que no tiene ninguna coincidencia.
Encontré un Jira relacionado con este problema aquí: http://jira.springframework.org/browse/SPR-6780. Pero todavía no sé cómo resolver mi problema.
¿Alguna idea?
Gracias
Para mí en lugar de request.getServletPath() trabajado request.getPathInfo() – ljader
AntPathMatcher es seguro para subprocesos. Compartir una instancia está perfectamente bien. – Cemo