You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xalan.apache.org by il...@apache.org on 2002/11/22 21:14:58 UTC
cvs commit: xml-xalan/java/samples/ApplyXPath ApplyXPath.java
ilene 2002/11/22 12:14:58
Modified: java/src/org/apache/xalan/serialize Encodings.java
Encodings.properties
java/samples/UseStylesheetParam UseStylesheetParam.java
test/java/src/org/apache/qetest/dtm TestDTM.java
TestDTMIter.java TestDTMTrav.java
test/java/src/org/apache/qetest/trax/stream
StreamResultAPITest.java
test/java/src/org/apache/qetest/trax ParameterTest.java
java/samples/ApplyXPathDOM ApplyXPathDOM.java
java/samples/CompiledJAXP Transform.java
java/samples/trax Examples.java
java/samples/ApplyXPath ApplyXPath.java
Log:
Committing Gordon Chiu's (grchiu@ca.ibm.com) patch for encoding issues
with serializer, samples and test harness. (Bugzilla #14753)
Revision Changes Path
1.13 +23 -8 xml-xalan/java/src/org/apache/xalan/serialize/Encodings.java
Index: Encodings.java
===================================================================
RCS file: /home/cvs/xml-xalan/java/src/org/apache/xalan/serialize/Encodings.java,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -r1.12 -r1.13
--- Encodings.java 20 Oct 2002 02:11:04 -0000 1.12
+++ Encodings.java 22 Nov 2002 20:14:57 -0000 1.13
@@ -66,6 +66,7 @@
import java.util.Enumeration;
import java.util.Properties;
+import java.util.StringTokenizer;
/**
* Provides information about encodings. Depends on the Java runtime
@@ -382,8 +383,20 @@
}
int totalEntries = props.size();
- EncodingInfo[] ret = new EncodingInfo[totalEntries];
+ int totalMimeNames = 0;
Enumeration keys = props.keys();
+ for (int i = 0; i < totalEntries; ++i) {
+ String javaName = (String) keys.nextElement();
+ String val = props.getProperty(javaName);
+ totalMimeNames++;
+ int pos = val.indexOf(' ');
+ for (int j = 0; j < pos; ++j)
+ if (val.charAt(j) == ',')
+ totalMimeNames++;
+ }
+ EncodingInfo[] ret = new EncodingInfo[totalMimeNames];
+ int j = 0;
+ keys = props.keys();
for (int i = 0; i < totalEntries; ++i) {
String javaName = (String) keys.nextElement();
String val = props.getProperty(javaName);
@@ -399,12 +412,14 @@
lastPrintable = 0x00FF;
}
else
- {
- mimeName = val.substring(0, pos);
- lastPrintable =
- Integer.decode(val.substring(pos).trim()).intValue();
- }
- ret [i] = new EncodingInfo (mimeName, javaName, lastPrintable);
+ {
+ lastPrintable = Integer.decode(val.substring(pos).trim()).intValue();
+ StringTokenizer st = new StringTokenizer(val.substring(0, pos),",");
+ while (st.hasMoreTokens()) {
+ mimeName = st.nextToken();
+ ret [j++] = new EncodingInfo (mimeName, javaName, lastPrintable);
+ }
+ }
}
return ret;
} catch (java.net.MalformedURLException mue) {
1.3 +10 -18 xml-xalan/java/src/org/apache/xalan/serialize/Encodings.properties
Index: Encodings.properties
===================================================================
RCS file: /home/cvs/xml-xalan/java/src/org/apache/xalan/serialize/Encodings.properties,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- Encodings.properties 20 Oct 2002 02:11:04 -0000 1.2
+++ Encodings.properties 22 Nov 2002 20:14:57 -0000 1.3
@@ -4,8 +4,7 @@
# Patch attributed to havardw@underdusken.no (H�vard Wigtil)
Cp1251 WINDOWS-1251 0x00FF
Cp1252 WINDOWS-1252 0x00FF
-ISO8859_1 US-ASCII 0x007F
-ISO8859_1 ISO-8859-1 0x00FF
+ISO8859_1 US-ASCII,ISO-8859-1 0x007F
# Patch attributed to havardw@underdusken.no (H�vard Wigtil)
ISO8859-1 ISO-8859-1 0x00FF
ISO8859_2 ISO-8859-2 0x00FF
@@ -26,8 +25,7 @@
ISO8859_9 ISO-8859-9 0x00FF
ISO8859-9 ISO-8859-9 0x00FF
# # ?
-8859_1 US-ASCII 0x00FF
-8859_1 ISO-8859-1 0x00FF
+8859_1 US-ASCII,ISO-8859-1 0x00FF
8859_2 ISO-8859-2 0x00FF
8859_3 ISO-8859-3 0x00FF
8859_4 ISO-8859-4 0x00FF
@@ -63,13 +61,9 @@
EUCJIS EUC-JP 0xFFFF
KSC5601 EUC-KR 0xFFFF
KOI8_R KOI8-R 0xFFFF
-Cp037 EBCDIC-CP-US 0x00FF
-Cp037 EBCDIC-CP-CA 0x00FF
-Cp037 EBCDIC-CP-NL 0x00FF
-Cp277 EBCDIC-CP-DK 0x00FF
-Cp277 EBCDIC-CP-NO 0x00FF
-Cp278 EBCDIC-CP-FI 0x00FF
-Cp278 EBCDIC-CP-SE 0x00FF
+Cp037 EBCDIC-CP-US,EBCDIC-CP-CA,EBCDIC-CP-NL 0x00FF
+Cp277 EBCDIC-CP-DK,EBCDIC-CP-NO 0x00FF
+Cp278 EBCDIC-CP-FI,EBCDIC-CP-SE 0x00FF
Cp280 EBCDIC-CP-IT 0x00FF
Cp284 EBCDIC-CP-ES 0x00FF
Cp285 EBCDIC-CP-GB 0x00FF
@@ -77,13 +71,11 @@
Cp420 EBCDIC-CP-AR1 0x00FF
Cp424 EBCDIC-CP-HE 0x00FF
Cp500 EBCDIC-CP-CH 0x00FF
-Cp870 EBCDIC-CP-ROECE 0x00FF
-Cp870 EBCDIC-CP-YU 0x00FF
+Cp870 EBCDIC-CP-ROECE,EBCDIC-CP-YU 0x00FF
Cp871 EBCDIC-CP-IS 0x00FF
Cp918 EBCDIC-CP-AR2 0x00FF
+Cp1047 IBM1047,IBM-1047 0x00FF
MacTEC MacRoman 0x00FF
-ASCII ASCII 0x007F
-ASCII ISO-Latin-1 0x00FF
-Unicode UNICODE 0xFFFF
-UTF8 UTF-8 0xFFFF
-Unicode UTF-16 0xFFFF
\ No newline at end of file
+ASCII ASCII,ISO-Latin-1 0x007F
+Unicode UNICODE,UTF-16 0xFFFF
+UTF8 UTF-8 0xFFFF
\ No newline at end of file
1.5 +3 -2 xml-xalan/java/samples/UseStylesheetParam/UseStylesheetParam.java
Index: UseStylesheetParam.java
===================================================================
RCS file: /home/cvs/xml-xalan/java/samples/UseStylesheetParam/UseStylesheetParam.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- UseStylesheetParam.java 20 Nov 2000 13:02:04 -0000 1.4
+++ UseStylesheetParam.java 22 Nov 2002 20:14:58 -0000 1.5
@@ -71,6 +71,7 @@
// Imported java classes
import java.io.IOException;
+import java.io.OutputStreamWriter;
/**
* Use command-line input as a stylesheet parameter.
@@ -97,6 +98,6 @@
transformer.setParameter("param1", /* parameter name */
paramValue /* parameter value */ );
- transformer.transform(new StreamSource("foo.xml"), new StreamResult(System.out));
+ transformer.transform(new StreamSource("foo.xml"), new StreamResult(new OutputStreamWriter(System.out)));
}
-}
\ No newline at end of file
+}
1.4 +3 -3 xml-xalan/test/java/src/org/apache/qetest/dtm/TestDTM.java
Index: TestDTM.java
===================================================================
RCS file: /home/cvs/xml-xalan/test/java/src/org/apache/qetest/dtm/TestDTM.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- TestDTM.java 13 Jul 2002 02:20:06 -0000 1.3
+++ TestDTM.java 22 Nov 2002 20:14:58 -0000 1.4
@@ -355,7 +355,7 @@
// Write results and close output file.
try
{
- fos.write(buf.toString().getBytes());
+ fos.write(buf.toString().getBytes("UTF-8"));
fos.close();
}
@@ -374,4 +374,4 @@
}
-}
\ No newline at end of file
+}
1.7 +2 -2 xml-xalan/test/java/src/org/apache/qetest/dtm/TestDTMIter.java
Index: TestDTMIter.java
===================================================================
RCS file: /home/cvs/xml-xalan/test/java/src/org/apache/qetest/dtm/TestDTMIter.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- TestDTMIter.java 13 Jul 2002 02:20:06 -0000 1.6
+++ TestDTMIter.java 22 Nov 2002 20:14:58 -0000 1.7
@@ -711,7 +711,7 @@
// Write results and close output file.
try
{
- fos.write(buf.toString().getBytes());
+ fos.write(buf.toString().getBytes("UTF-8"));
fos.close();
}
1.3 +2 -2 xml-xalan/test/java/src/org/apache/qetest/dtm/TestDTMTrav.java
Index: TestDTMTrav.java
===================================================================
RCS file: /home/cvs/xml-xalan/test/java/src/org/apache/qetest/dtm/TestDTMTrav.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- TestDTMTrav.java 13 Jul 2002 02:20:06 -0000 1.2
+++ TestDTMTrav.java 22 Nov 2002 20:14:58 -0000 1.3
@@ -960,7 +960,7 @@
// Write results and close output file.
try
{
- fos.write(buf.toString().getBytes());
+ fos.write(buf.toString().getBytes("UTF-8"));
fos.close();
}
1.6 +5 -3 xml-xalan/test/java/src/org/apache/qetest/trax/stream/StreamResultAPITest.java
Index: StreamResultAPITest.java
===================================================================
RCS file: /home/cvs/xml-xalan/test/java/src/org/apache/qetest/trax/stream/StreamResultAPITest.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- StreamResultAPITest.java 13 Jul 2002 02:20:07 -0000 1.5
+++ StreamResultAPITest.java 22 Nov 2002 20:14:58 -0000 1.6
@@ -85,6 +85,7 @@
import java.io.FileWriter;
import java.io.InputStream;
import java.io.OutputStream;
+import java.io.OutputStreamWriter;
import java.io.PrintStream;
import java.io.Writer;
import java.io.StringWriter;
@@ -287,7 +288,7 @@
reporter.logArbitrary(reporter.TRACEMSG, "baos was: " + baos.toString());
reporter.logArbitrary(reporter.TRACEMSG, "ps(baos2) was: " + baos2.toString());
}
- writeFileAndValidate(baos.toString(), outputFileInfo.goldName);
+ writeFileAndValidate(baos.toString("UTF-8"), outputFileInfo.goldName);
}
catch (Throwable t)
{
@@ -387,7 +388,8 @@
{
try
{
- FileWriter fw = new FileWriter(outNames.nextName());
+ FileOutputStream fos = new FileOutputStream(outNames.nextName());
+ OutputStreamWriter fw = new OutputStreamWriter(fos, "UTF-8");
fw.write(data);
fw.close();
// Explicitly ask that Validation be turned off, since
1.4 +5 -4 xml-xalan/test/java/src/org/apache/qetest/trax/ParameterTest.java
Index: ParameterTest.java
===================================================================
RCS file: /home/cvs/xml-xalan/test/java/src/org/apache/qetest/trax/ParameterTest.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- ParameterTest.java 13 Jul 2002 02:20:06 -0000 1.3
+++ ParameterTest.java 22 Nov 2002 20:14:58 -0000 1.4
@@ -77,7 +77,8 @@
// java classes
import java.io.BufferedReader;
import java.io.File;
-import java.io.FileReader;
+import java.io.FileInputStream;
+import java.io.InputStreamReader;
import java.io.IOException;
import java.util.Properties;
@@ -551,8 +552,8 @@
try
{
- FileReader fr = new FileReader(f);
- BufferedReader br = new BufferedReader(fr);
+ InputStreamReader is = new InputStreamReader(new FileInputStream(f), "UTF-8");
+ BufferedReader br = new BufferedReader(is);
for (;;)
{
1.2 +2 -1 xml-xalan/java/samples/ApplyXPathDOM/ApplyXPathDOM.java
Index: ApplyXPathDOM.java
===================================================================
RCS file: /home/cvs/xml-xalan/java/samples/ApplyXPathDOM/ApplyXPathDOM.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- ApplyXPathDOM.java 30 Oct 2002 15:03:31 -0000 1.1
+++ ApplyXPathDOM.java 22 Nov 2002 20:14:58 -0000 1.2
@@ -57,6 +57,7 @@
// This file uses 4 space indents, no tabs.
import java.io.FileInputStream;
+import java.io.OutputStreamWriter;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.transform.OutputKeys;
@@ -150,7 +151,7 @@
System.out.print(sb);
}
else {
- serializer.transform(new DOMSource(n), new StreamResult(System.out));
+ serializer.transform(new DOMSource(n), new StreamResult(new OutputStreamWriter(System.out)));
}
System.out.println();
}
1.2 +2 -1 xml-xalan/java/samples/CompiledJAXP/Transform.java
Index: Transform.java
===================================================================
RCS file: /home/cvs/xml-xalan/java/samples/CompiledJAXP/Transform.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- Transform.java 13 Jul 2001 10:36:02 -0000 1.1
+++ Transform.java 22 Nov 2002 20:14:58 -0000 1.2
@@ -1,4 +1,5 @@
import java.io.File;
+import java.io.OutputStreamWriter;
import java.io.FileInputStream;
import java.io.ObjectInputStream;
@@ -28,7 +29,7 @@
try {
StreamSource document = new StreamSource(xml);
- StreamResult result = new StreamResult(System.out);
+ StreamResult result = new StreamResult(new OutputStreamWriter(System.out));
Templates templates = readTemplates(translet);
Transformer transformer = templates.newTransformer();
transformer.transform(document, result);
1.12 +15 -15 xml-xalan/java/samples/trax/Examples.java
Index: Examples.java
===================================================================
RCS file: /home/cvs/xml-xalan/java/samples/trax/Examples.java,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -r1.11 -r1.12
--- Examples.java 9 Oct 2001 18:38:24 -0000 1.11
+++ Examples.java 22 Nov 2002 20:14:58 -0000 1.12
@@ -64,6 +64,7 @@
import java.io.Reader;
import java.io.IOException;
import java.io.File;
+import java.io.OutputStreamWriter;
import java.io.FileInputStream;
import java.io.FileReader;
import java.io.BufferedInputStream;
@@ -251,7 +252,7 @@
// Transform the source XML to System.out.
transformer.transform( new StreamSource(sourceID),
- new StreamResult(System.out));
+ new StreamResult(new OutputStreamWriter(System.out)));
}
/**
@@ -298,7 +299,7 @@
xmlSource.setSystemId(sourceID);
// Transform the source XML to System.out.
- transformer.transform( xmlSource, new StreamResult(System.out));
+ transformer.transform( xmlSource, new StreamResult(new OutputStreamWriter(System.out)));
}
/**
@@ -329,7 +330,7 @@
xmlSource.setSystemId(sourceID);
// Transform the source XML to System.out.
- transformer.transform( xmlSource, new StreamResult(System.out));
+ transformer.transform( xmlSource, new StreamResult(new OutputStreamWriter(System.out)));
}
@@ -357,12 +358,12 @@
System.out.println("\n\n----- transform of "+sourceID1+" -----");
transformer1.transform(new StreamSource(sourceID1),
- new StreamResult(System.out));
+ new StreamResult(new OutputStreamWriter(System.out)));
System.out.println("\n\n----- transform of "+sourceID2+" -----");
transformer2.transform(new StreamSource(sourceID2),
- new StreamResult(System.out));
+ new StreamResult(new OutputStreamWriter(System.out)));
}
@@ -627,7 +628,7 @@
transformer.transform(new DOMSource(doc), new DOMResult(outNode));
Transformer serializer = tfactory.newTransformer();
- serializer.transform(new DOMSource(outNode), new StreamResult(System.out));
+ serializer.transform(new DOMSource(outNode), new StreamResult(new OutputStreamWriter(System.out)));
return outNode;
}
@@ -655,13 +656,13 @@
transformer1.setParameter("a-param",
"hello to you!");
transformer1.transform(new StreamSource(sourceID),
- new StreamResult(System.out));
+ new StreamResult(new OutputStreamWriter(System.out)));
System.out.println("\n=========");
transformer2.setOutputProperty(OutputKeys.INDENT, "yes");
transformer2.transform(new StreamSource(sourceID),
- new StreamResult(System.out));
+ new StreamResult(new OutputStreamWriter(System.out)));
}
/**
@@ -683,7 +684,7 @@
// Transform the source XML to System.out.
transformer.transform( new StreamSource(sourceID),
- new StreamResult(System.out));
+ new StreamResult(new OutputStreamWriter(System.out)));
System.out.println("\n=========\n");
@@ -693,7 +694,7 @@
// Transform the source XML to System.out.
transformer.transform( new StreamSource(sourceID),
- new StreamResult(System.out));
+ new StreamResult(new OutputStreamWriter(System.out)));
}
/**
@@ -713,7 +714,7 @@
transformer.setOutputProperties(oprops);
transformer.transform(new StreamSource(sourceID),
- new StreamResult(System.out));
+ new StreamResult(new OutputStreamWriter(System.out)));
}
/**
@@ -739,7 +740,7 @@
Transformer transformer = tfactory.newTransformer(sources);
transformer.transform(new StreamSource(sourceID),
- new StreamResult(System.out));
+ new StreamResult(new OutputStreamWriter(System.out)));
}
else
{
@@ -830,7 +831,7 @@
serializer.setOutputProperty(OutputKeys.INDENT, "yes");
serializer.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION, "yes");
serializer.transform(new DOMSource(node),
- new StreamResult(System.out));
+ new StreamResult(new OutputStreamWriter(System.out)));
}
/**
@@ -854,10 +855,9 @@
Properties oprops = new Properties();
oprops.put("method", "html");
- oprops.put("indent-amount", "2");
serializer.setOutputProperties(oprops);
serializer.transform(new DOMSource(doc),
- new StreamResult(System.out));
+ new StreamResult(new OutputStreamWriter(System.out)));
}
1.18 +2 -1 xml-xalan/java/samples/ApplyXPath/ApplyXPath.java
Index: ApplyXPath.java
===================================================================
RCS file: /home/cvs/xml-xalan/java/samples/ApplyXPath/ApplyXPath.java,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -r1.17 -r1.18
--- ApplyXPath.java 29 Nov 2001 22:19:14 -0000 1.17
+++ ApplyXPath.java 22 Nov 2002 20:14:58 -0000 1.18
@@ -57,6 +57,7 @@
// This file uses 4 space indents, no tabs.
import java.io.FileInputStream;
+import java.io.OutputStreamWriter;
import java.io.FileNotFoundException;
import java.util.Properties;
import org.apache.xerces.parsers.DOMParser;
@@ -148,7 +149,7 @@
System.out.print(sb);
}
else {
- serializer.transform(new DOMSource(n), new StreamResult(System.out));
+ serializer.transform(new DOMSource(n), new StreamResult(new OutputStreamWriter(System.out)));
}
System.out.println();
}
---------------------------------------------------------------------
To unsubscribe, e-mail: xalan-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: xalan-cvs-help@xml.apache.org