Author: asankha
Date: Tue Mar 13 12:43:29 2007
New Revision: 517829
URL: http://svn.apache.org/viewvc?view=rev&rev=517829
Log:
fix possible NPE for non Axis2 / generic SOAP faults
Modified:
webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/SynapseCallbackReceiver.java
Modified:
webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/SynapseCallbackReceiver.java
URL:
http://svn.apache.org/viewvc/webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/SynapseCallbackReceiver.java?view=diff&rev=517829&r1=517828&r2=517829
==============================================================================
---
webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/SynapseCallbackReceiver.java
(original)
+++
webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/SynapseCallbackReceiver.java
Tue Mar 13 12:43:29 2007
@@ -28,6 +28,7 @@
import org.apache.synapse.Constants;
import org.apache.synapse.FaultHandler;
import org.apache.synapse.endpoints.Endpoint;
+import org.apache.axiom.soap.SOAPFault;
import java.util.*;
@@ -79,9 +80,14 @@
if (response.getEnvelope().getBody().hasFault()) {
Stack faultStack = synapseOutMsgCtx.getFaultStack();
if (faultStack != null && !faultStack.isEmpty()) {
- ((FaultHandler) faultStack.pop()).handleFault(
- synapseOutMsgCtx,
-
response.getEnvelope().getBody().getFault().getException());
+
+ SOAPFault fault = response.getEnvelope().getBody().getFault();
+ Exception e = fault.getException();
+ if (e == null) {
+ e = new
Exception(fault.getReason().getFirstSOAPText().getText());
+ }
+
+ ((FaultHandler)
faultStack.pop()).handleFault(synapseOutMsgCtx,e);
}
} else {
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]