2009-10-16 6 views
7

मेरा एप्लिकेशन अपेक्षा करता है कि कभी-कभी अमान्य XML दस्तावेज़ों को पार्स करने का प्रयास किया जाएगा। मैं वर्तमान में "SAXParseException पकड़ता हूं: प्रोलॉग में सामग्री की अनुमति नहीं है।" अपवाद, जो ठीक काम करता है। हालांकि, जेरिस को अभी भी कंसोल पर अपने संदेश को मुद्रित करने की आवश्यकता महसूस होती है:जावा ज़र्सेज़ में लॉगिंग अक्षम करें ("[घातक त्रुटि]: 1: 1: प्रोलॉग में सामग्री की अनुमति नहीं है।")

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

क्या इसे अक्षम करने का कोई तरीका है?

उत्तर

3

मेरा मानना ​​है कि यह डिफ़ॉल्ट रूप से System.out या System.err पर प्रिंट कर रहा है। एक त्रुटि हैडलर इंटरफेस है जिसे आप पार्सर पर सेट कर सकते हैं यदि आप सीधे जेर्सेस कक्षाओं के साथ बातचीत कर रहे हैं।

अन्यथा, आप XMLErrorReporter

8

का एक उदाहरण मैं अभी हाल ही में एक ही जरूरत भर में आया के साथ SAXParser पर संपत्ति org.apache.xerces.impl.Constants.ERROR_REPORTER_PROPERTY सेट करने का प्रयास कर सकते हैं। त्रुटिहैंडर को शून्य पर सेट करना घातक त्रुटि प्रिंट लाइन को दबा देता है।

parser.setErrorHandler(null); 
2

बराबर जब org.w3c.dom.ls.LSParser का उपयोग कर

parser.getDomConfig().setParameter("error-handler", null); 

मैं आज इस समस्या थी और यह पता चला एक standard configuration parameter कि मैं यहाँ अपने जवाब को पढ़ने के बाद ही पाया जा सकता है। धन्यवाद।

संबंधित मुद्दे