SORU
30 EYLÜL 2008, Salı


DocumentBuilder Olun.ayrıştırma DTD başvuruları yoksayın

Xml dosyası (değişken f) bu yöntemi ben ayrıştırırken, bir hata alıyorum

C:\Documents ve Ayarlar\joe\Desktop\aicpcudev\OnlineModule\göster.dtd (sistem belirtilen yolu bulamıyor)

Dtd yok biliyorum, ne yapmam gerekir. Nasıl ayrıştırma bu DTD referans hatalarını görmezden gelerek Belge nesnesine nesne Dosyası miyim?

private static Document getDoc(File f, String docId) throws Exception{
    DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
    DocumentBuilder db = dbf.newDocumentBuilder();
    Document doc = db.parse(f);


    return doc;
}

CEVAP
1 EKİM 2008, ÇARŞAMBA


Bu DocumentBuilderFactory özellikleri ayarlamayı deneyin:

DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();

dbf.setValidating(false);
dbf.setNamespaceAware(true);
dbf.setFeature("http://xml.org/sax/features/namespaces", false);
dbf.setFeature("http://xml.org/sax/features/validation", false);
dbf.setFeature("http://apache.org/xml/features/nonvalidating/load-dtd-grammar", false);
dbf.setFeature("http://apache.org/xml/features/nonvalidating/load-external-dtd", false);

DocumentBuilder db = dbf.newDocumentBuilder();
...

Sonuçta, seçenekleri parser uygulaması için özel olduğunu düşünüyorum. Eğer yardımı olacaksa, Here is some documentation for Xerces2.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • DrakeVEVO

    DrakeVEVO

    17 AĞUSTOS 2009
  • KIT KAT

    KIT KAT

    3 EKİM 2005
  • Moodle

    Moodle

    11 Mayıs 2010