eliminar caracteres no UTF-8 de xml con codificación declarada = utf-8 - Java

Tengo que manejar este escenario en Java:

Recibo una solicitud en forma XML de un cliente con codificación declarada = utf-8. Desafortunadamente, puede contener caracteres no utf-8 y existe el requisito de eliminar estos caracteres del xml de mi lado (heredado).

Consideremos un ejemplo donde este XML no válido contiene £ (libra).

1) Obtengo xml como Java String con £ (no tengo acceso a la interfaz en este momento, pero probablemente obtengo xml como Java String). ¿Puedo usar replaceAll (£, "") para deshacerme de este personaje? ¿Algún problema potencial?

2) Obtengo xml como una matriz de bytes: ¿cómo manejar esta operación de forma segura en ese caso?

Respuestas a la pregunta(6)

Su respuesta a la pregunta