Estamos analizar un documento XML utilizando JAXB y obtiene este error:Explicación del error JAXB: bytes no válida 1 de 1 byte secuencia de codificación UTF-8
[org.xml.sax.SAXParseException: Invalid byte 1 of 1-byte UTF-8 sequence.]
at javax.xml.bind.helpers.AbstractUnmarshallerImpl.createUnmarshalException(AbstractUnmarshallerImpl.java:315)
Qué significa exactamente y cómo podemos resolver ¿¿esta??
Estamos ejecutando el código como:
jaxbContext = JAXBContext.newInstance(Results.class);
Unmarshaller unmarshaller = jaxbContext.createUnmarshaller();
unmarshaller.setSchema(getSchema());
results = (Results) unmarshaller.unmarshal(new FileInputStream(inputFile));
actualización
cuestión parece ser debido a este carácter "divertido" en el archivo XML: ¿
Por qué ¿Esto causaría tal problema?
Actualización 2
Hay dos de esos caracteres extraños en el archivo. Están alrededor del medio del archivo. Tenga en cuenta que el archivo se crea sobre la base de datos en una base de datos y esos personajes extraños de alguna manera se metieron en la base de datos.
Actualización 3
Aquí es el fragmento de XML completo:
<Description><![CDATA[Mt. Belvieu ¿ Texas]]></Description>
Update 4
Tenga en cuenta que no hay <?xml ...?>
cabecera.
La HEX para el carácter especial es BF
Significa que la entrada está dañada ... no hay mucho que pueda decir sin más información. – skaffman
Se agregó algo más de información. ¿Tiene algún sentido? ¡Gracias por tu ayuda! –
Puede publicar la sección del archivo XML que incluye el texto ofensivo. – ChrisF