2009-10-16 17 views
7

Mi aplicación espera que a veces intente analizar documentos XML no válidos. Actualmente capturo la "SAXParseException: el contenido no está permitido en prolog". excepción, que funciona bien. Sin embargo, Xerces todavía siente la necesidad de imprimir su propio mensaje a la consola:Deshabilitar el registro en Java Xerces ("[Error fatal]: 1: 1: el contenido no está permitido en prolog.")

[Fatal Error] :1:1: Content is not allowed in prolog. 

¿Hay alguna manera de deshabilitar esto?

Respuesta

3

Creo que está imprimiendo en System.out o System.err de forma predeterminada. Existe una interfaz ErrorHandler que puede establecer en el Analizador si está interactuando directamente con las clases de Xerces.

De lo contrario, puede intentar establecer la propiedad en el org.apache.xerces.impl.Constants.ERROR_REPORTER_PROPERTY SAXParser con una instancia de XMLErrorReporter

8

Hace poco encontré con la misma necesidad. Establecer el ErrorHandler en nulo suprime la línea de impresión Fatal Error.

parser.setErrorHandler(null); 
Cuestiones relacionadas