Author: asankha
Date: Fri Nov 2 01:59:57 2007
New Revision: 591272
URL: http://svn.apache.org/viewvc?rev=591272&view=rev
Log:
fix support for POX files with VFS transport
Modified:
webservices/synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/base/BaseUtils.java
Modified:
webservices/synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/base/BaseUtils.java
URL:
http://svn.apache.org/viewvc/webservices/synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/base/BaseUtils.java?rev=591272&r1=591271&r2=591272&view=diff
==============================================================================
---
webservices/synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/base/BaseUtils.java
(original)
+++
webservices/synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/base/BaseUtils.java
Fri Nov 2 01:59:57 2007
@@ -30,10 +30,7 @@
import org.apache.axis2.context.MessageContext;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-import org.apache.axiom.soap.SOAPEnvelope;
-import org.apache.axiom.soap.SOAPFactory;
-import org.apache.axiom.soap.SOAP12Constants;
-import org.apache.axiom.soap.SOAP11Constants;
+import org.apache.axiom.soap.*;
import org.apache.axiom.soap.impl.builder.StAXSOAPModelBuilder;
import org.apache.axiom.soap.impl.llom.soap11.SOAP11Factory;
import org.apache.axiom.om.util.StAXUtils;
@@ -43,6 +40,7 @@
import org.apache.axiom.om.OMOutputFormat;
import org.apache.axiom.om.OMElement;
import org.apache.axiom.om.OMText;
+import org.apache.axiom.om.OMAbstractFactory;
import org.apache.axiom.attachments.ByteArrayDataSource;
import javax.xml.namespace.QName;
@@ -182,7 +180,13 @@
envelope = (SOAPEnvelope) builder.getDocumentElement();
}
}
- } catch (XMLStreamException ignore) {}
+ } catch (Exception ignore) {
+ try {
+ in.close();
+ } catch (IOException e) {}
+ in = getInputStream(message);
+ }
+
// handle SOAP when content type is missing, or any other POX, binary
or text payload
if (builder == null) {
@@ -190,7 +194,7 @@
SOAPFactory soapFactory = new SOAP11Factory();
try {
builder = new
StAXOMBuilder(StAXUtils.createXMLStreamReader(in, charSetEnc));
- builder.setOMBuilderFactory(soapFactory);
+ builder.setOMBuilderFactory(OMAbstractFactory.getOMFactory());
String ns =
builder.getDocumentElement().getNamespace().getNamespaceURI();
if (SOAP12Constants.SOAP_ENVELOPE_NAMESPACE_URI.equals(ns)) {
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]