Cómo modificar QueryParam y PathParam en Jersey 2

Estoy tratando de filtrar / modificar las llamadas Post y Put para asegurarme de que todos los parámetros proporcionados por el usuario estén filtrados del código HTML y JS para evitar ataques XSS. Me gustaría asegurarme de que esto se implemente a nivel de API para que no importa qué cliente se esté utilizando, estará protegido.

Con Jersey 1.x, esto fue posible implementando ContainerRequestFilter y modificando request.getQueryParameters () antes de que coincidan con los servlets solicitados. Ejemplo:http://codehustler.org/blog/jersey-cross-site-scripting-xss-filter-for-java-web-apps/

Con Jersey 2, sin embargo, esto no es posible mediante la implementación de la misma interfaz, ya que ya no podemos obtener getQueryParameters () o getPathParameters (), sino que solo podemos obtener UriInfo (), pero es inútil ya que los parámetros de consulta son inmutables. Miré en JerseyFiltros e interceptores pero desafortunadamente se limitan a dar acceso a los encabezados y quizás a las cookies.

Pasé mucho tiempo investigando pero no pude encontrar lo que estaba buscando.

¿Hay alguna forma alternativa de filtrar parámetros de ruta y consulta? ¿Hay algo que me falta?

¡Gracias!

Respuestas a la pregunta(2)

Su respuesta a la pregunta