You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by di...@apache.org on 2007/03/06 00:19:07 UTC
svn commit: r514914 -
/webservices/axis2/trunk/java/modules/saaj/src/org/apache/axis2/saaj/SOAPPartImpl.java
Author: dims
Date: Mon Mar 5 15:19:07 2007
New Revision: 514914
URL: http://svn.apache.org/viewvc?view=rev&rev=514914
Log:
special case for StreamSource, we need not run it thru the Identity Transformer
Modified:
webservices/axis2/trunk/java/modules/saaj/src/org/apache/axis2/saaj/SOAPPartImpl.java
Modified: webservices/axis2/trunk/java/modules/saaj/src/org/apache/axis2/saaj/SOAPPartImpl.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/saaj/src/org/apache/axis2/saaj/SOAPPartImpl.java?view=diff&rev=514914&r1=514913&r2=514914
==============================================================================
--- webservices/axis2/trunk/java/modules/saaj/src/org/apache/axis2/saaj/SOAPPartImpl.java (original)
+++ webservices/axis2/trunk/java/modules/saaj/src/org/apache/axis2/saaj/SOAPPartImpl.java Mon Mar 5 15:19:07 2007
@@ -38,8 +38,10 @@
import javax.xml.transform.TransformerFactoryConfigurationError;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
+import javax.xml.transform.stream.StreamSource;
import org.apache.axiom.attachments.Attachments;
+import org.apache.axiom.attachments.utils.IOUtils;
import org.apache.axiom.om.util.StAXUtils;
import org.apache.axiom.soap.SOAP11Constants;
import org.apache.axiom.soap.SOAP12Constants;
@@ -337,13 +339,18 @@
this.source = source;
try {
ByteArrayOutputStream baos = new ByteArrayOutputStream();
- Result result = new StreamResult(baos);
- Transformer xformer = TransformerFactory.newInstance().newTransformer();
- xformer.transform(source, result);
- ByteArrayInputStream is = new ByteArrayInputStream(baos.toByteArray());
-
- XMLInputFactory inputFactory = XMLInputFactory.newInstance();
+ InputStream is;
+ if (source instanceof StreamSource) {
+ is = ((StreamSource) source).getInputStream();
+ } else {
+ Result result = new StreamResult(baos);
+ Transformer xformer = TransformerFactory.newInstance().newTransformer();
+ xformer.transform(source, result);
+ is = new ByteArrayInputStream(baos.toByteArray());
+ }
+
+ XMLInputFactory inputFactory = XMLInputFactory.newInstance();
XMLStreamReader reader = inputFactory.createXMLStreamReader(is);
StAXSOAPModelBuilder builder1 = null;
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org