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 gd...@apache.org on 2007/05/10 22:05:58 UTC

svn commit: r536982 - in /webservices/axis2/trunk/java: modules/kernel/src/org/apache/axis2/context/ modules/kernel/src/org/apache/axis2/description/ modules/kernel/src/org/apache/axis2/engine/ modules/kernel/src/org/apache/axis2/transport/ modules/ker...

Author: gdaniels
Date: Thu May 10 13:05:57 2007
New Revision: 536982

URL: http://svn.apache.org/viewvc?view=rev&rev=536982
Log:
* Remove AxisEngine.receiveFault().  The logic in here was practically a dup of receive(), and everywhere that was calling it was using a check into the SOAP body first (if fault, call receiveFault(), otherwise call receive()).  Now everyone uses receive() and it does the check itself, deciding which flow to use.

* Refactor async logic in OutInAxisOperation into a separate sendAsync() method as a start to cleaning up some async flow issues.

* Add isFault() to MessageContext.


Modified:
    webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/MessageContext.java
    webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/description/OutInAxisOperation.java
    webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/description/RobustOutOnlyAxisOperation.java
    webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/AxisEngine.java
    webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/TransportUtils.java
    webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/HTTPTransportUtils.java
    webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/jms/JMSMessageReceiver.java
    webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/local/LocalTransportReceiver.java
    webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/mail/MailWorker.java
    webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/mail/server/MailSorter.java
    webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/tcp/TCPWorker.java
    webservices/axis2/trunk/java/xdocs/1_1/transport_howto.html

Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/MessageContext.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/MessageContext.java?view=diff&rev=536982&r1=536981&r2=536982
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/MessageContext.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/MessageContext.java Thu May 10 13:05:57 2007
@@ -18,6 +18,7 @@
 
 import org.apache.axiom.attachments.Attachments;
 import org.apache.axiom.om.OMOutputFormat;
+import org.apache.axiom.om.OMException;
 import org.apache.axiom.om.impl.MTOMConstants;
 import org.apache.axiom.om.impl.builder.StAXBuilder;
 import org.apache.axiom.om.util.StAXUtils;
@@ -4563,5 +4564,11 @@
         return configurationContext;
     }
 
-
+    public boolean isFault() {
+        try {
+            return getEnvelope().getBody().hasFault();
+        } catch (Exception e) {
+            return false;
+        }
+    }
 }

Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/description/OutInAxisOperation.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/description/OutInAxisOperation.java?view=diff&rev=536982&r1=536981&r2=536982
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/description/OutInAxisOperation.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/description/OutInAxisOperation.java Thu May 10 13:05:57 2007
@@ -163,8 +163,7 @@
         ConfigurationContext cc = sc.getConfigurationContext();
 
         // copy interesting info from options to message context.
-        MessageContext mc = oc
-                .getMessageContext(WSDLConstants.MESSAGE_LABEL_OUT_VALUE);
+        MessageContext mc = oc.getMessageContext(WSDLConstants.MESSAGE_LABEL_OUT_VALUE);
         if (mc == null) {
             throw new AxisFault(Messages.getMessage("outmsgctxnull"));
         }
@@ -192,109 +191,114 @@
         }
 
         if (useAsync || options.isUseSeparateListener()) {
-            if (log.isDebugEnabled()) {
-                log.debug("useAsync=" + useAsync + ", seperateListener=" +
-                        options.isUseSeparateListener());
+            sendAsync(useAsync, mc, cc);
+        } else {
+            if (block) {
+                // Send the SOAP Message and receive a response
+                send(mc);
+                completed = true;
+            } else {
+                sc.getConfigurationContext().getThreadPool().execute(
+                        new NonBlockingInvocationWorker(callback, mc));
             }
-            /**
+        }
+    }
+
+    private void sendAsync(boolean useAsync, MessageContext mc, ConfigurationContext cc)
+            throws AxisFault {
+        if (log.isDebugEnabled()) {
+            log.debug("useAsync=" + useAsync + ", seperateListener=" +
+                    options.isUseSeparateListener());
+        }
+        /**
              * We are following the async path. If the user hasn't set a callback object then we must
-             * block until the whole MEP is complete, as they have no other way to get their reply message.
-             */
-            CallbackReceiver callbackReceiver = null;
-            if (axisOp.getMessageReceiver() != null &&
-                    axisOp.getMessageReceiver() instanceof CallbackReceiver) {
-                callbackReceiver = (CallbackReceiver) axisOp.getMessageReceiver();
-            } else {
-                if (log.isDebugEnabled()) {
-                    log.debug("Creating new callback receiver");
-                }
-                callbackReceiver = new CallbackReceiver();
-                axisOp.setMessageReceiver(callbackReceiver);
+         * block until the whole MEP is complete, as they have no other way to get their reply message.
+         */
+        CallbackReceiver callbackReceiver = null;
+        if (axisOp.getMessageReceiver() != null &&
+                axisOp.getMessageReceiver() instanceof CallbackReceiver) {
+            callbackReceiver = (CallbackReceiver) axisOp.getMessageReceiver();
+        } else {
+            if (log.isDebugEnabled()) {
+                log.debug("Creating new callback receiver");
             }
+            callbackReceiver = new CallbackReceiver();
+            axisOp.setMessageReceiver(callbackReceiver);
+        }
 
-            SyncCallBack internalCallback = null;
-            if (callback != null) {
-                callbackReceiver.addCallback(mc.getMessageID(), callback);
-            } else {
-                if (log.isDebugEnabled()) {
-                    log.debug("Creating internal callback");
-                }
-                internalCallback = new SyncCallBack();
-                callbackReceiver.addCallback(mc.getMessageID(), internalCallback);
+        SyncCallBack internalCallback = null;
+        if (callback != null) {
+            callbackReceiver.addCallback(mc.getMessageID(), callback);
+        } else {
+            if (log.isDebugEnabled()) {
+                log.debug("Creating internal callback");
             }
+            internalCallback = new SyncCallBack();
+            callbackReceiver.addCallback(mc.getMessageID(), internalCallback);
+        }
 
-            /**
+        /**
              * If USE_CUSTOM_LISTENER is set to 'true' the replyTo value will not be replaced and Axis2 will not
-             * start its internal listner. Some other enntity (e.g. a module) should take care of obtaining the 
-             * response message.
-             */
-            Boolean useCustomListener =
-                    (Boolean) options.getProperty(Constants.Configuration.USE_CUSTOM_LISTENER);
-            if (useAsync) {
-                useCustomListener = Boolean.TRUE;
-            }
-            if (useCustomListener == null || !useCustomListener.booleanValue()) {
-
-                EndpointReference replyToFromTransport =
-                        mc.getConfigurationContext().getListenerManager().
-                                getEPRforService(sc.getAxisService().getName(),
-                                                 axisOp.getName().getLocalPart(), mc
-                                        .getTransportIn().getName());
+         * start its internal listner. Some other enntity (e.g. a module) should take care of obtaining the
+         * response message.
+         */
+        Boolean useCustomListener =
+                (Boolean) options.getProperty(Constants.Configuration.USE_CUSTOM_LISTENER);
+        if (useAsync) {
+            useCustomListener = Boolean.TRUE;
+        }
+        if (useCustomListener == null || !useCustomListener.booleanValue()) {
 
-                if (mc.getReplyTo() == null) {
-                    mc.setReplyTo(replyToFromTransport);
-                } else {
-                    mc.getReplyTo().setAddress(replyToFromTransport.getAddress());
-                }
+            EndpointReference replyToFromTransport =
+                    mc.getConfigurationContext().getListenerManager().
+                            getEPRforService(sc.getAxisService().getName(),
+                                             axisOp.getName().getLocalPart(), mc
+                                    .getTransportIn().getName());
+
+            if (mc.getReplyTo() == null) {
+                mc.setReplyTo(replyToFromTransport);
+            } else {
+                mc.getReplyTo().setAddress(replyToFromTransport.getAddress());
             }
+        }
 
-            //if we don't do this , this guy will wait till it gets HTTP 202 in the HTTP case
-            mc.setProperty(MessageContext.TRANSPORT_NON_BLOCKING, Boolean.TRUE);
-            AxisEngine engine = new AxisEngine(cc);
-            mc.getConfigurationContext().registerOperationContext(mc.getMessageID(), oc);
-            engine.send(mc);
-
-            if (internalCallback != null) {
-                long timeout = options.getTimeOutInMilliSeconds();
-                long waitTime = timeout;
-                long startTime = System.currentTimeMillis();
-
-                synchronized (internalCallback) {
-                    while (! internalCallback.isComplete() && waitTime >= 0) {
-                        try {
-                            internalCallback.wait(timeout);
-                        } catch (InterruptedException e) {
-                            // We were interrupted for some reason, keep waiting
-                            // or throw new AxisFault( "Callback was interrupted by someone?" );
-                        }
-                        // The wait finished, compute remaining time
-                        // - wait can end prematurely, see Object.wait( int timeout )
-                        waitTime = timeout - (System.currentTimeMillis() - startTime);
-                    }
-                }
-                // process the result of the invocation
-                if (internalCallback.envelope != null) {
-                    // The call ended normally, so there is nothing to do
-                } else {
-                    if (internalCallback.error instanceof AxisFault) {
-                        throw (AxisFault) internalCallback.error;
-                    } else if (internalCallback.error != null) {
-                        throw AxisFault.makeFault(internalCallback.error);
-                    } else if (! internalCallback.isComplete()) {
-                        throw new AxisFault(Messages.getMessage("responseTimeOut"));
-                    } else {
-                        throw new AxisFault(Messages.getMessage("callBackCompletedWithError"));
+        //if we don't do this , this guy will wait till it gets HTTP 202 in the HTTP case
+        mc.setProperty(MessageContext.TRANSPORT_NON_BLOCKING, Boolean.TRUE);
+        AxisEngine engine = new AxisEngine(cc);
+        mc.getConfigurationContext().registerOperationContext(mc.getMessageID(), oc);
+        engine.send(mc);
+
+        if (internalCallback != null) {
+            long timeout = options.getTimeOutInMilliSeconds();
+            long waitTime = timeout;
+            long startTime = System.currentTimeMillis();
+
+            synchronized (internalCallback) {
+                while (! internalCallback.isComplete() && waitTime >= 0) {
+                    try {
+                        internalCallback.wait(timeout);
+                    } catch (InterruptedException e) {
+                        // We were interrupted for some reason, keep waiting
+                        // or throw new AxisFault( "Callback was interrupted by someone?" );
                     }
+                    // The wait finished, compute remaining time
+                    // - wait can end prematurely, see Object.wait( int timeout )
+                    waitTime = timeout - (System.currentTimeMillis() - startTime);
                 }
             }
-        } else {
-            if (block) {
-                // Send the SOAP Message and receive a response
-                send(mc);
-                completed = true;
+            // process the result of the invocation
+            if (internalCallback.envelope != null) {
+                // The call ended normally, so there is nothing to do
             } else {
-                sc.getConfigurationContext().getThreadPool().execute(
-                        new NonBlockingInvocationWorker(callback, mc));
+                if (internalCallback.error instanceof AxisFault) {
+                    throw (AxisFault) internalCallback.error;
+                } else if (internalCallback.error != null) {
+                    throw AxisFault.makeFault(internalCallback.error);
+                } else if (! internalCallback.isComplete()) {
+                    throw new AxisFault(Messages.getMessage("responseTimeOut"));
+                } else {
+                    throw new AxisFault(Messages.getMessage("callBackCompletedWithError"));
+                }
             }
         }
     }
@@ -362,21 +366,15 @@
         }
         SOAPEnvelope resenvelope = responseMessageContext.getEnvelope();
         if (resenvelope != null) {
+            engine = new AxisEngine(msgctx.getConfigurationContext());
+            engine.receive(responseMessageContext);
+            if (responseMessageContext.getReplyTo() != null) {
+                sc.setTargetEPR(responseMessageContext.getReplyTo());
+            }
             if (resenvelope.getBody().hasFault()) {
-                SOAPFault soapFault = resenvelope.getBody().getFault();
-                //we need to call engine.receiveFault
-                engine = new AxisEngine(msgctx.getConfigurationContext());
-                engine.receiveFault(responseMessageContext);
                 if (options.isExceptionToBeThrownOnSOAPFault()) {
                     // does the SOAPFault has a detail element for Excpetion
-                    AxisFault af = Utils.getInboundFaultFromMessageContext(responseMessageContext);
-                    throw af;
-                }
-            } else {
-                engine = new AxisEngine(msgctx.getConfigurationContext());
-                engine.receive(responseMessageContext);
-                if (responseMessageContext.getReplyTo() != null) {
-                    sc.setTargetEPR(responseMessageContext.getReplyTo());
+                    throw Utils.getInboundFaultFromMessageContext(responseMessageContext);
                 }
             }
         }

Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/description/RobustOutOnlyAxisOperation.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/description/RobustOutOnlyAxisOperation.java?view=diff&rev=536982&r1=536981&r2=536982
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/description/RobustOutOnlyAxisOperation.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/description/RobustOutOnlyAxisOperation.java Thu May 10 13:05:57 2007
@@ -103,9 +103,8 @@
             if (envelope != null) {
                 if (envelope.getBody().hasFault()) {
                     //receiving a fault
-                    engine.receiveFault(responseMessageContext);
-                    AxisFault af = Utils.getInboundFaultFromMessageContext(responseMessageContext);
-                    throw af;
+                    engine.receive(responseMessageContext);
+                    throw Utils.getInboundFaultFromMessageContext(responseMessageContext);
                 }
             }
             return null;

Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/AxisEngine.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/AxisEngine.java?view=diff&rev=536982&r1=536981&r2=536982
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/AxisEngine.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/AxisEngine.java Thu May 10 13:05:57 2007
@@ -114,13 +114,18 @@
             log.trace(msgContext.getLogIDString() + " receive:" + msgContext.getMessageID());
         }
         ConfigurationContext confContext = msgContext.getConfigurationContext();
-        ArrayList preCalculatedPhases =
-                confContext.getAxisConfiguration().getGlobalInFlow();
+        ArrayList preCalculatedPhases;
+        if (msgContext.isFault()) {
+            preCalculatedPhases = confContext.getAxisConfiguration().getInFaultFlow();
+            msgContext.setFLOW(MessageContext.IN_FAULT_FLOW);
+        } else {
+            preCalculatedPhases = confContext.getAxisConfiguration().getGlobalInFlow();
+            msgContext.setFLOW(MessageContext.IN_FLOW);
+        }
         // Set the initial execution chain in the MessageContext to a *copy* of what
         // we got above.  This allows individual message processing to change the chain without
         // affecting later messages.
         msgContext.setExecutionChain((ArrayList) preCalculatedPhases.clone());
-        msgContext.setFLOW(MessageContext.IN_FLOW);
         try {
             InvocationResponse pi = invoke(msgContext, IS_INBOUND, NOT_RESUMING_EXECUTION);
 
@@ -320,61 +325,6 @@
         }
 
         return pi;
-    }
-
-    /**
-     * This is invoked when a SOAP Fault is received from a Other SOAP Node
-     * Receives a SOAP fault from another SOAP node.
-     *
-     * @param msgContext
-     * @throws AxisFault
-     */
-    public InvocationResponse receiveFault(MessageContext msgContext) throws AxisFault {
-        if (LoggingControl.debugLoggingAllowed && log.isDebugEnabled()) {
-            log.debug(
-                    msgContext.getLogIDString() + " " + Messages.getMessage("receivederrormessage",
-                                                                            msgContext.getMessageID()));
-        }
-        ConfigurationContext confContext = msgContext.getConfigurationContext();
-        ArrayList preCalculatedPhases =
-                confContext.getAxisConfiguration().getInFaultFlow();
-        // Set the initial execution chain in the MessageContext to a *copy* of what
-        // we got above.  This allows individual message processing to change the chain without
-        // affecting later messages.
-        msgContext.setExecutionChain((ArrayList) preCalculatedPhases.clone());
-        msgContext.setFLOW(MessageContext.IN_FAULT_FLOW);
-
-        try {
-            InvocationResponse pi = invoke(msgContext, IS_INBOUND, NOT_RESUMING_EXECUTION);
-
-            if (pi.equals(InvocationResponse.CONTINUE)) {
-                if (msgContext.isServerSide()) {
-                    // invoke the Message Receivers
-                    checkMustUnderstand(msgContext);
-
-                    MessageReceiver receiver = msgContext.getAxisOperation().getMessageReceiver();
-
-                    receiver.receive(msgContext);
-                }
-                flowComplete(msgContext, true);
-            } else if (pi.equals(InvocationResponse.SUSPEND)) {
-                return pi;
-            } else if (pi.equals(InvocationResponse.ABORT)) {
-                flowComplete(msgContext, true);
-                return pi;
-            } else {
-                String errorMsg =
-                        "Unrecognized InvocationResponse encountered in AxisEngine.receiveFault()";
-                log.error(msgContext.getLogIDString() + " " + errorMsg);
-                throw new AxisFault(errorMsg);
-            }
-        }
-        catch (AxisFault e) {
-            flowComplete(msgContext, true);
-            throw e;
-        }
-
-        return InvocationResponse.CONTINUE;
     }
 
     /**

Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/TransportUtils.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/TransportUtils.java?view=diff&rev=536982&r1=536981&r2=536982
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/TransportUtils.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/TransportUtils.java Thu May 10 13:05:57 2007
@@ -75,13 +75,7 @@
             msgContext.setProperty(Constants.Configuration.CHARACTER_SET_ENCODING, charSetEnc);
 
             return createSOAPMessage(msgContext, inStream, contentType);
-        } catch (AxisFault e) {
-            throw e;
-        } catch (OMException e) {
-            throw AxisFault.makeFault(e);
-        } catch (XMLStreamException e) {
-            throw AxisFault.makeFault(e);
-        } catch (FactoryConfigurationError e) {
+        } catch (Exception e) {
             throw AxisFault.makeFault(e);
         }
     }

Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/HTTPTransportUtils.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/HTTPTransportUtils.java?view=diff&rev=536982&r1=536981&r2=536982
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/HTTPTransportUtils.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/http/HTTPTransportUtils.java Thu May 10 13:05:57 2007
@@ -273,11 +273,7 @@
             msgContext.setEnvelope(envelope);
             AxisEngine engine = new AxisEngine(msgContext.getConfigurationContext());
 
-            if (envelope.getBody().hasFault()) {
-                pi = engine.receiveFault(msgContext);
-            } else {
-                pi = engine.receive(msgContext);
-            }
+            pi = engine.receive(msgContext);
 
             return pi;
         } catch (SOAPProcessingException e) {

Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/jms/JMSMessageReceiver.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/jms/JMSMessageReceiver.java?view=diff&rev=536982&r1=536981&r2=536982
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/jms/JMSMessageReceiver.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/jms/JMSMessageReceiver.java Thu May 10 13:05:57 2007
@@ -239,22 +239,13 @@
             AxisEngine engine = new AxisEngine(msgCtx.getConfigurationContext());
             try {
                 log.debug("Delegating JMS message for processing to the Axis engine");
-                if (msgCtx.getEnvelope().getBody().hasFault()) {
-                    log.debug("Fault Message received. Processing the SOAP fault");
-                    engine.receiveFault(msgCtx);
-                    
-                } else {
-                    try {
-                        log.debug("SOAP message received. Processing the SOAP message");
-                        engine.receive(msgCtx);
-                        
-                    } catch (AxisFault e) {
-                        log.debug("Exception occured when receiving the SOAP message", e);
-                        if (msgCtx.isServerSide()) {
-                            
-                            MessageContext faultContext = MessageContextBuilder.createFaultMessageContext(msgCtx, e);
-                            engine.sendFault(faultContext);
-                        }
+                try {
+                    engine.receive(msgCtx);
+                } catch (AxisFault e) {
+                    log.debug("Exception occured when receiving the SOAP message", e);
+                    if (msgCtx.isServerSide()) {
+                        MessageContext faultContext = MessageContextBuilder.createFaultMessageContext(msgCtx, e);
+                        engine.sendFault(faultContext);
                     }
                 }
             } catch (AxisFault af) {

Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/local/LocalTransportReceiver.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/local/LocalTransportReceiver.java?view=diff&rev=536982&r1=536981&r2=536982
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/local/LocalTransportReceiver.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/local/LocalTransportReceiver.java Thu May 10 13:05:57 2007
@@ -73,11 +73,7 @@
 
             AxisEngine engine = new AxisEngine(confContext);
 
-            if (envelope.getBody().hasFault()) {
-                engine.receiveFault(msgCtx);
-            } else {
-                engine.receive(msgCtx);
-            }
+            engine.receive(msgCtx);
         } catch (XMLStreamException e) {
             throw AxisFault.makeFault(e);
         } catch (FactoryConfigurationError e) {

Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/mail/MailWorker.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/mail/MailWorker.java?view=diff&rev=536982&r1=536981&r2=536982
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/mail/MailWorker.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/mail/MailWorker.java Thu May 10 13:05:57 2007
@@ -48,12 +48,7 @@
         while (true) {
             try {
                 msgContext = (MessageContext) messageQueue.take();
-                if (msgContext.getEnvelope().getBody().hasFault()) {
-                    engine.receiveFault(msgContext);
-                } else {
-                    engine.receive(msgContext);
-                }
-
+                engine.receive(msgContext);
             } catch (Exception e) {
                 try {
                     if (msgContext != null) {

Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/mail/server/MailSorter.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/mail/server/MailSorter.java?view=diff&rev=536982&r1=536981&r2=536982
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/mail/server/MailSorter.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/mail/server/MailSorter.java Thu May 10 13:05:57 2007
@@ -128,12 +128,7 @@
             SOAPEnvelope envelope = (SOAPEnvelope) builder.getDocumentElement();
 
             msgContext.setEnvelope(envelope);
-
-            if (envelope.getBody().hasFault()) {
-                engine.receiveFault(msgContext);
-            } else {
-                engine.receive(msgContext);
-            }
+            engine.receive(msgContext);
         } catch (Exception e) {
             try {
                 if (msgContext != null) {

Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/tcp/TCPWorker.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/tcp/TCPWorker.java?view=diff&rev=536982&r1=536981&r2=536982
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/tcp/TCPWorker.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/tcp/TCPWorker.java Thu May 10 13:05:57 2007
@@ -82,12 +82,7 @@
                 SOAPEnvelope envelope = (SOAPEnvelope) builder.getDocumentElement();
 
                 msgContext.setEnvelope(envelope);
-
-                if (envelope.getBody().hasFault()) {
-                    engine.receiveFault(msgContext);
-                } else {
-                    engine.receive(msgContext);
-                }
+                engine.receive(msgContext);
             } else {
                 throw new AxisFault(Messages.getMessage("unknownTransport",
                                                         Constants.TRANSPORT_TCP));

Modified: webservices/axis2/trunk/java/xdocs/1_1/transport_howto.html
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/xdocs/1_1/transport_howto.html?view=diff&rev=536982&r1=536981&r2=536982
==============================================================================
--- webservices/axis2/trunk/java/xdocs/1_1/transport_howto.html (original)
+++ webservices/axis2/trunk/java/xdocs/1_1/transport_howto.html Thu May 10 13:05:57 2007
@@ -129,11 +129,7 @@
 
                 SOAPEnvelope envelope = (SOAPEnvelope) builder.getDocumentElement();
                 msgContext.setEnvelope(envelope);
-                if (envelope.getBody().hasFault()) {
-                        engine.receiveFault(msgContext);
-                } else {
-                        engine.receive(msgContext);
-                }
+                engine.receive(msgContext);
         } else {
                 throw new AxisFault(Messages.getMessage("unknownTransport",Constants.TRANSPORT_NAME));
         }



---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org