Formatting differences after migrating to JDOM2
Robert Krüger <[email protected]> Sun, 29 Sep 2013 16:42:54 +0200
| Newsgroups | gmane.comp.java.jdom.general |
|---|---|
| Message-ID | <CAEnqZEW6p8iKP1wSZ4MO0_2=9mVBLvYzrNjC-LJcXxEA642KmQ@mail.gmail.com> |
Hi,
I just migrated my code to from JDOM to JDOM2 and noticed some of our
unit tests failed. The reason is different formatting. I used
Format.getPrettyFormat().setTextMode(PRESERVE) for the formatting and
with jdom this produced output like the following
<av-container format-version="0.3.4">
<container-format>MP4</container-format>
<bitrate>646448</bitrate>
<duration>2002002</duration>
<start-time>0</start-time>
<acquisition-timestamp>1340887741000</acquisition-timestamp>
<stream>
<type>VIDEO</type>
<codec>H.264</codec>
...
after replacing the imports by jdom2 I got
<av-container format-version="0.3.4">
<container-format>
MP4
</container-format><bitrate>
646448
</bitrate><duration>
2002002
</duration><start-time>
0
</start-time><acquisition-timestamp>
1340887741000
</acquisition-timestamp><stream>
<type>
VIDEO
</type><codec>
H.264
</codec>...
This looks rather broken as it does not preserve the original data at
all with all those added newlines. Removing the setTextMode(PRESERVE)
restored the format to what is shown above but the reason I added
setTextMode(PRESERVE) was that without it, whitespace was trimmed and
I do not want that for elements with text content.
Is this a bug? How can I achieve what I want, i.e. have a "pretty",
i.e. indented format and have text-only elements preserve whitespace?
Thanks in advance,
Robert
_______________________________________________
To control your jdom-interest membership:
http://www.jdom.org/mailman/options/jdom-interest/[email protected]