[ http://issues.apache.org/jira/browse/XALANJ-1808?page=all ]

Brian Minchau updated XALANJ-1808:
----------------------------------

    Version: 2.6
                 (was: Latest Development Code)

> Indenting doesn't work well
> ---------------------------
>
>          Key: XALANJ-1808
>          URL: http://issues.apache.org/jira/browse/XALANJ-1808
>      Project: XalanJ2
>         Type: Bug
>   Components: Serialization
>     Versions: 2.6
>  Environment: Operating System: Other
> Platform: Other
>     Reporter: Tetsuya Yoshida
>     Assignee: Xalan Developers Mailing List

>
> When in.xml is printed as indenting is true and indent is 2, 
> expected output is expected.xml. But I got actual.xml.
> ===== in.xml =====
> <?xml version="1.0"?>
> <a><b>b</b>
> <c>c</c>
> </a>
> ===================
> ===== expected.xml =====
> <?xml version="1.0"?>
> <a>
>   <b>b</b>
>   <c>c</c>
> </a>
> =========================
> ===== actual.xml =====
> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
> <a>
>   <b>b</b>
> <c>c</c>     <==== indenting not correct
> </a>
> ======================
> The test code is below : 
> ===== PrintXalan.java =====
> import java.io.*;
> import java.util.*;
> import javax.xml.parsers.*;
> import org.w3c.dom.*;
> import org.xml.sax.*;
> import org.apache.xml.serializer.*;
> public class PrintXalan {
>       public static void main (String[] args) throws Exception {
>               String inputPath = "in.xml";
>               String outputPath = "outXalan.xml";
>               DocumentBuilderFactory factory = 
> DocumentBuilderFactory.newInstance();
>               DocumentBuilder builder = factory.newDocumentBuilder();
>               Document doc = builder.parse(new InputSource(new 
> FileInputStream(inputPath)));
>               OutputStream out = null;
>               try {
>                       out = new FileOutputStream(outputPath);
>                       print(out, doc, "UTF-8", true, 2);
>                       out.flush();
>               } finally {
>                       if (out != null) out.close();
>               }
>       }
>       public static void print(OutputStream out,
>                                                                               
>                          Document doc,
>                                                                               
>                          String encoding,
>                                                                               
>                          boolean indenting,
>                                                                               
>                          int indent) throws Exception {
>               Properties outputFormat =
>                       
> OutputPropertiesFactory.getDefaultMethodProperties(Method.XML);
>               
> outputFormat.setProperty(OutputPropertiesFactory.S_KEY_INDENT_AMOUNT,
>                                                                               
>                                  String.valueOf(indent));
>               ToStream serializer = new ToXMLStream();
>               serializer.setOutputFormat(outputFormat);
>               
>               serializer.setWriter(new OutputStreamWriter(out, encoding));
>               serializer.setEncoding(encoding);
>               serializer.setIndent(indenting);
>               
>               serializer.serialize(doc);
>       }
> }
> ===========================

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to