@Path expresión regex en el Descanso del servidor
-
20-09-2019 - |
Pregunta
Estoy escribiendo un RESTful en Java server con CXF marco.
¿Cómo puedo escribir un @Expresión Regular de la Ruta con el fin de obtener cualquier URI terminado en "acción" valor?
Solución
No está seguro de si su /acción/*, /*/acción, o /*/acción/* que quieres?.De todos modos aquí va:
1) /acción/* puede ser igualada por la
@Path("/action/{search:.*}")<br>
doStuff(@PathParam("search") List<PathSegment> list)
En este ejemplo, una petición como GET /acción/fin/2/precio será servida por el doStuff() método donde lista puede ser utilizado para llegar a todos los segmentos de la ruta en orden/2/precio capturado por la expresión regular.
2) /*/acción puede ser igualada por la (ADVERTENCIA no probado)
@Path("/{search:.*}/action")
findStuff(@PathParam("search") List<PathSegment> list)
En este ejemplo, una petición como GET /item/2/acción será servida por el findStuff() método donde lista puede ser utilizado para llegar a todos los segmentos de la ruta en elemento/2 capturado por la expresión regular.
3) /*/acción/* Aquí creo que está fuera de suerte (siéntase libre de corregirme si me equivoco), para mayor información marque esta blog post.