You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by ve...@apache.org on 2009/01/09 00:56:32 UTC

svn commit: r732877 - /webservices/axis2/trunk/java/modules/saaj/src/org/apache/axis2/saaj/SOAPPartImpl.java

Author: veithen
Date: Thu Jan  8 15:56:32 2009
New Revision: 732877

URL: http://svn.apache.org/viewvc?rev=732877&view=rev
Log:
Removed some dead code in SOAPPartImpl. Indeed the "source" attribute is only read in getContent(), which first resets it before returning its (new) value. Also note that (1) storing a Source object is bad because some implementations can only be read once and (2) the way the Source is built in the constructor (using an InputStreamReader) is blatantly wrong because it doesn't take character encoding into account.

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?rev=732877&r1=732876&r2=732877&view=diff
==============================================================================
--- 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 Thu Jan  8 15:56:32 2009
@@ -73,7 +73,6 @@
 import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
 import java.io.InputStream;
-import java.io.InputStreamReader;
 import java.util.Iterator;
 
 public class SOAPPartImpl extends SOAPPart {
@@ -85,8 +84,6 @@
     private SOAPEnvelopeImpl envelope;
     private MimeHeadersEx mimeHeaders = new MimeHeadersEx();
 
-    private Source source;
-
     public SOAPPartImpl(SOAPMessageImpl parentSoapMsg,
                         SOAPEnvelopeImpl soapEnvelope) {
         //setMimeHeader(HTTPConstants.HEADER_CONTENT_ID, IDGenerator.generateID());
@@ -128,18 +125,13 @@
         XMLStreamReader xmlReader = null;
       
         
-        InputStream modifiedInputStream = null;
         StAXSOAPModelBuilder builder = null;
-        InputStreamReader isReader = null;
 
         if (contentType.indexOf("multipart/related") == 0) {
             //This contains attachements
             try {
                 Attachments attachments =
                         new Attachments(inputStream, fullContentTypeStr, false, "", "");
-                modifiedInputStream = attachments.getSOAPPartInputStream();
-               	isReader = new InputStreamReader(modifiedInputStream);
-               
 
                 String soapEnvelopeNamespaceURI =
                         BuilderUtil.getEnvelopeNamespace(fullContentTypeStr);
@@ -180,15 +172,13 @@
                 throw new SOAPException(e);
             }
         } else {
-            modifiedInputStream = inputStream;
             try {
-                isReader = new InputStreamReader(modifiedInputStream);
                 XMLStreamReader streamReader = null;
                 
                 if(knownEncoding != null){
-                	streamReader = StAXUtils.createXMLStreamReader(modifiedInputStream, knownEncoding);
+                	streamReader = StAXUtils.createXMLStreamReader(inputStream, knownEncoding);
                 }else{
-                	streamReader = StAXUtils.createXMLStreamReader(modifiedInputStream);                	
+                	streamReader = StAXUtils.createXMLStreamReader(inputStream);                	
                 }
 
                 if (HTTPConstants.MEDIA_TYPE_TEXT_XML.equals(contentType)) {
@@ -221,9 +211,6 @@
             envelope.element.build();
             this.document = envelope.getOwnerDocument();
             envelope.setSOAPPartParent(this);
-            javax.xml.transform.Source xmlSource =
-                    new javax.xml.transform.stream.StreamSource( isReader);
-            this.source = xmlSource;
         } catch (Exception e) {
             throw new SOAPException(e);
         }
@@ -370,7 +357,6 @@
     }
 
     public void setContent(Source source) throws SOAPException {
-        this.source = source;
         try {
             ByteArrayOutputStream baos = new ByteArrayOutputStream();
 
@@ -422,9 +408,7 @@
      * @see #setContent(javax.xml.transform.Source) setContent(javax.xml.transform.Source)
      */
     public Source getContent() throws SOAPException {
-        DOMSource domSource = new DOMSource(this.document);
-        this.source = domSource;
-        return source;
+        return new DOMSource(this.document);
     }
 
     /**