You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by dk...@apache.org on 2013/09/12 17:37:34 UTC
svn commit: r1522623 -
/cxf/branches/2.6.x-fixes/rt/core/src/main/java/org/apache/cxf/wsdl11/SchemaSerializer.java
Author: dkulp
Date: Thu Sep 12 15:37:33 2013
New Revision: 1522623
URL: http://svn.apache.org/r1522623
Log:
Merged revisions 1522601 via git cherry-pick from
https://svn.apache.org/repos/asf/cxf/branches/2.7.x-fixes
........
r1522601 | dkulp | 2013-09-12 10:48:43 -0400 (Thu, 12 Sep 2013) | 2 lines
Use staxutils to write the schema. (more reliable, faster)
........
Modified:
cxf/branches/2.6.x-fixes/rt/core/src/main/java/org/apache/cxf/wsdl11/SchemaSerializer.java
Modified: cxf/branches/2.6.x-fixes/rt/core/src/main/java/org/apache/cxf/wsdl11/SchemaSerializer.java
URL: http://svn.apache.org/viewvc/cxf/branches/2.6.x-fixes/rt/core/src/main/java/org/apache/cxf/wsdl11/SchemaSerializer.java?rev=1522623&r1=1522622&r2=1522623&view=diff
==============================================================================
--- cxf/branches/2.6.x-fixes/rt/core/src/main/java/org/apache/cxf/wsdl11/SchemaSerializer.java (original)
+++ cxf/branches/2.6.x-fixes/rt/core/src/main/java/org/apache/cxf/wsdl11/SchemaSerializer.java Thu Sep 12 15:37:33 2013
@@ -28,15 +28,14 @@ import javax.wsdl.extensions.ExtensionRe
import javax.wsdl.extensions.ExtensionSerializer;
import javax.wsdl.extensions.schema.Schema;
import javax.xml.namespace.QName;
-import javax.xml.transform.OutputKeys;
-import javax.xml.transform.Transformer;
-import javax.xml.transform.TransformerException;
+import javax.xml.stream.XMLStreamException;
+import javax.xml.stream.XMLStreamWriter;
import javax.xml.transform.dom.DOMSource;
-import javax.xml.transform.stream.StreamResult;
import org.w3c.dom.Node;
-import org.apache.cxf.helpers.XMLUtils;
+import org.apache.cxf.staxutils.PrettyPrintXMLStreamWriter;
+import org.apache.cxf.staxutils.StaxUtils;
/**
* A custom Schema serializer because WSDL4J's is buggy.
@@ -48,15 +47,15 @@ public class SchemaSerializer implements
Definition def, ExtensionRegistry extReg) throws WSDLException {
try {
writeXml(((Schema)extension).getElement(), pw);
- } catch (TransformerException e) {
+ } catch (XMLStreamException e) {
throw new WSDLException("", "Could not write schema.", e);
}
}
- private void writeXml(Node n, PrintWriter pw) throws TransformerException {
- Transformer t = XMLUtils.newTransformer(2);
- t.setOutputProperty(OutputKeys.INDENT, "yes");
- t.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION, "yes");
- t.transform(new DOMSource(n), new StreamResult(pw));
+ private void writeXml(Node n, PrintWriter pw) throws XMLStreamException {
+ XMLStreamWriter writer = StaxUtils.createXMLStreamWriter(pw);
+ writer = new PrettyPrintXMLStreamWriter(writer, 2);
+ StaxUtils.copy(new DOMSource(n), writer);
+ writer.close();
}
}