Re: JDOM and Android
Rolf Lear <[email protected]> Mon, 23 Apr 2012 19:28:23 -0400
| Newsgroups | gmane.comp.java.jdom.general |
|---|---|
| Message-ID | <[email protected]> |
Hi all. I think I am ready to produce a statement on the 'Status of JDOM on Android'... The full wiki page is here: https://github.com/hunterhacker/jdom/wiki/JDOM2-and-Android Here is a summary... JDOM is fully functional on Android with the following 2 exceptions: 1. Android has neither a StAX API nor an implementation. As a result, all JDOM input and output classes that source/sink StAX streams will fail. This includes all classes with the word 'StAX' in the classname. Using these JDOM classes will cause a 'FATAL' application error and your JDOM app will 'crash'. 2. JDOM requires third-party support to implement XML Parsing and the default parser on Android has limited features, and thus JDOM functionality is limited too. As a result, using the default XML parser you will not be able to do: - DTD validation (even though the DocType is parsed and used to add default attributes, entity references, etc.) - XMLSchema validation (even though the XSD Schema is parsed and used to add default attributes, etc.) - suppress the expansion of Entity References - &entity; type references are always expanded. - receive 'internal subset' values from the DocType if there are any. It should be noted that it is possible to install Xerces parser with your Android app, but this does not add significant value because neither the DocType nor Schema validation is possible with Xerces because of various interdependencies within Xerces that make validation impossible. Additionally, the JAXP process in Android is somewhat broken, and as far as I can tell it is not possible to install Xerces as the 'default' parser, but only as a create-each-instance-by-name SAX2 parser. Thus, in conclusion, a number of internal issues have been resolved in JDOM to make it compatible with Android. JDOM has dependencies though on third part functionality (SAX/DOM/StAX) and these dependencies have limitations on Android. As a result JDOM has similar limitations. Of significance, the 'core' functionality of parsing, manipulating, and outputting XML though JDOM is all fully functional. Rolf _______________________________________________ To control your jdom-interest membership: http://www.jdom.org/mailman/options/jdom-interest/[email protected]