[jdom-interest] [Fwd: Bug in JDOM serialization]
Elliotte Rusty Harold
elharo at metalab.unc.edu
Sun May 18 08:43:12 PDT 2003
At 2:29 PM -0800 3/27/03, Jason Hunter wrote:
>As we just noticed, the additional namespaces in the JDOM element
>are transient. This is bad.
No, it's not. Only the fields are transient, not the information. The
fields are transient because JDOM uses the flyweight design pattern
to hold namespaces. Using transient ensures that deserialization
won't actually create duplicates of things that are supposed to have
only one instance.
However, if you look deeper in the code you'll notice that Element
has custom readObject() and writeObject() methods that do store the
additional namespaces in a way that's consistent with flyweights, so
nothing is ever lost.
--
Elliotte Rusty Harold
elharo at metalab.unc.edu
Processing XML with Java (Addison-Wesley, 2002)
http://www.cafeconleche.org/books/xmljava
http://www.amazon.com/exec/obidos/ISBN%3D0201771861/cafeaulaitA
More information about the jdom-interest
mailing list