Tener un método como este:Tomcat, JAX-RS, Jersey, @PathParam: ¿cómo pasar puntos y barras?
@GET @Path("/name/{name}")
@Produces(MediaType.TEXT_PLAIN)
public String getProperty(@PathParam("name") String name) {
System.out.println(name);
}
¿Cómo pasar un valor como "test./test"?
/name/test./test gives HTTP 404
/name/test.%2Ftest gives HTTP 400
/name/test.%252Ftest prints test%2Ftest
Pero si lo hago name = URLDecoder.decode(name);
imprime /test
y la primera parte de test.
desaparece.
Ya hay una o dos preguntas como estas pero son viejas y no se encontró una buena solución, pensé que volvería a preguntar.
¡Funciona! Puede pasar cualquier cantidad de barras, todas son capturadas sin problemas. ¿Funcionará esto con todas las implementaciones JAX-RS o cómo funciona jersey? De cualquier manera, muchas gracias, resolvió mi problema. –
@Maxim Creo que es estándar, y lo uso con Apache CXF. –
Se ve bien, pero parece que las barras diagonales no coinciden con esta expresión regular ... – Ievgen