开发者

Jython and the SAX Parser: No more than 64000 entities allowed?

开发者 https://www.devze.com 2023-02-13 05:27 出处:网络
I\'ve done a simple test of the xml.sax parser in Jython on a large XML file (800 MB) and encountered the following error:

I've done a simple test of the xml.sax parser in Jython on a large XML file (800 MB) and encountered the following error:

Traceback (most recent call last):
  File "src/project/xmltools.py", line 92, in <module>
    sys.exit(main())
  File "src/project/xmltools.py", line 87, in main
    parser.parse(open(argv[1], "r"))
  File "/amd.home/home/user/workspace/jython-2.5.2/Lib/xml/sax/drivers2/drv_javasax.py", line 146, in parse
    self._parser.parse(JyInputSourceWrapper(source))
  File "/amd.home/home/user/workspace/jython-2.5.2/Lib/xml/sax/drivers2/drv_javasax.py", line 59, in fatalError
    self._err_handler.fatalError(_wrap_sax_exception(exc))
  File "/amd.home/home/user/workspace/jython-2.5.2/Lib/xml/sax/handler.py", line 38, in fatalError
    raise exception
xml.sax._exceptions.SAXParseException: <unknown>:1:1: The parser has encountered more than "64,000" entity expansions in this document; this is the limit imposed by the application.

What is 开发者_C百科the matter with this "limit imposed by the application" and how can I override it?

I have tried to use the Java XML library nu.xom and ran into the same error.


Try setting the entityExpansionLimit property to a higher value than 64000. See http://download.oracle.com/javase/1.5.0/docs/guide/xml/jaxp/JAXP-Compatibility_150.html#JAXP_security.

0

精彩评论

暂无评论...
验证码 换一张
取 消