ravenix

          魚如何控制自己的呼吸
          posts - 7, comments - 3, trackbacks - 0, articles - 0
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

          設置digister不加載外部dtd,加快處理速度

          Posted on 2005-08-30 15:57 ravenix 閱讀(1064) 評論(0)  編輯  收藏 所屬分類: XML-XSL-FO
          如果用digister處理的xml里包含了外部dtd指定,即在!DOCTYPE中用PUBLIC指定外部dtd,即使使用了

          digester.setValidating(false);

          底層的sax解析器xerces仍然會去指定的地址去加載DTD,特別地,如果指定的地址無法獲得DTD,就會拋出異常:
          SAXException: The markup declarations contained or pointed to by the document type declaration must be well-formed

          為了避免這個問題,可以使用這樣的語句:
          digester.setValidating(false);
          digester.setFeature(
          "http://apache.org/xml/features/nonvalidating/load-external-dtd",false);

          當然這個設置只有在底層的sax解析器是xerces才有效。如果你使用的是其它的sax解析器,請參考解析器的文檔。
          主站蜘蛛池模板: 兴仁县| 内丘县| 皋兰县| 岳西县| 集贤县| 安化县| 宽城| 青冈县| 姜堰市| 乐昌市| 开平市| 云霄县| 达孜县| 马尔康县| 静宁县| 株洲县| 慈溪市| 贡山| 阳江市| 密山市| 廉江市| 行唐县| 利津县| 岚皋县| 安图县| 九江县| 河池市| 咸阳市| 柯坪县| 新巴尔虎右旗| 元氏县| 瓦房店市| 泰兴市| 宜城市| 鱼台县| 遂昌县| 调兵山市| 土默特左旗| 东辽县| 健康| 贡觉县|