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解析器,請參考解析器的文檔。
          主站蜘蛛池模板: 吉隆县| 长岛县| 新干县| 赞皇县| 买车| 通许县| 德清县| 沁阳市| 界首市| 河池市| 鲁山县| 梅河口市| 凌源市| 新源县| 扬州市| 周至县| 丰都县| 万盛区| 呼玛县| 石景山区| 白水县| 望都县| 河源市| 连山| 将乐县| 沁阳市| 德格县| 永登县| 陵水| 沙河市| 齐河县| 工布江达县| 如皋市| 石楼县| 镇平县| 宿州市| 石家庄市| 长治市| 荃湾区| 札达县| 株洲县|