[jdom-interest] Patch: JDOM white space probelm
Bradley S. Huffman
hip at a.cs.okstate.edu
Tue Feb 25 07:59:24 PST 2003
Here's a patch to XMLOutputter that should fix the problem. It
also moves the printing of line seperator after doctype up to
output(Document,Writer).
Since we don't have a unit test to throughly test XMLOutputter, try the
patch for a couple days and let's us know if it introduces any problems.
Right now I can only run it on a simple test, which seems to work just
fine.
Brad
*** XMLOutputter.old Tue Feb 25 09:26:37 2003
--- XMLOutputter.java Tue Feb 25 09:49:33 2003
***************
*** 667,672 ****
--- 667,676 ----
if (doc.getDocType() != null) {
printDocType(doc.getDocType(), out);
+
+ // Always print line separator after declaration, helps the
+ // output look better and is semantically inconsequential
+ out.write(currentFormat.lineSeparator);
}
// Print out root element, as well as any root level
***************
*** 1039,1048 ****
out.write("]");
}
out.write(">");
-
- // Always print line separator after declaration, helps the
- // output look better and is semantically inconsequential
- out.write(currentFormat.lineSeparator);
}
/**
--- 1043,1048 ----
***************
*** 1522,1529 ****
int size = content.size();
if (currentFormat.trimAllWhite
|| currentFormat.textNormalize
! || currentFormat.textTrim
! || currentFormat.newlines) {
while( index < size) {
if ( !isAllWhitespace( content.get(index))) {
return index;
--- 1522,1528 ----
int size = content.size();
if (currentFormat.trimAllWhite
|| currentFormat.textNormalize
! || currentFormat.textTrim) {
while( index < size) {
if ( !isAllWhitespace( content.get(index))) {
return index;
***************
*** 1547,1554 ****
int index = start;
if (currentFormat.trimAllWhite
|| currentFormat.textNormalize
! || currentFormat.textTrim
! || currentFormat.newlines) {
while( index >= 0) {
if ( !isAllWhitespace( content.get(index - 1)))
break;
--- 1546,1552 ----
int index = start;
if (currentFormat.trimAllWhite
|| currentFormat.textNormalize
! || currentFormat.textTrim) {
while( index >= 0) {
if ( !isAllWhitespace( content.get(index - 1)))
break;
More information about the jdom-interest
mailing list