[CXF-7187] Check for the other soap fault action value to correlate response


Project: http://git-wip-us.apache.org/repos/asf/cxf/repo
Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/0bb262c2
Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/0bb262c2
Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/0bb262c2

Branch: refs/heads/3.0.x-fixes
Commit: 0bb262c26d40cad9d1136e4e6cc92a453385aec6
Parents: 896952e
Author: Daniel Kulp <dk...@apache.org>
Authored: Tue Apr 4 12:31:36 2017 -0400
Committer: Daniel Kulp <dk...@apache.org>
Committed: Tue Apr 4 12:54:31 2017 -0400

----------------------------------------------------------------------
 core/src/main/java/org/apache/cxf/ws/addressing/Names.java      | 5 ++++-
 .../main/java/org/apache/cxf/ws/addressing/soap/MAPCodec.java   | 3 ++-
 2 files changed, 6 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cxf/blob/0bb262c2/core/src/main/java/org/apache/cxf/ws/addressing/Names.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/cxf/ws/addressing/Names.java 
b/core/src/main/java/org/apache/cxf/ws/addressing/Names.java
index b80758e..51d2c80 100644
--- a/core/src/main/java/org/apache/cxf/ws/addressing/Names.java
+++ b/core/src/main/java/org/apache/cxf/ws/addressing/Names.java
@@ -109,7 +109,10 @@ public final class Names {
         "/fault";
     public static final String WSA_DEFAULT_FAULT_ACTION =
         WSA_NAMESPACE_NAME + WSA_FAULT_DELIMITER;
-        
+
+    public static final String WSA_DEFAULT_SOAP_FAULT_ACTION =
+        WSA_NAMESPACE_NAME + "/soap" + WSA_FAULT_DELIMITER;
+
     public static final String WSAW_ACTION_NAME = "Action";
     public static final QName WSAW_ACTION_QNAME = 
         new QName(WSA_NAMESPACE_WSDL_NAME, WSAW_ACTION_NAME);

http://git-wip-us.apache.org/repos/asf/cxf/blob/0bb262c2/rt/ws/addr/src/main/java/org/apache/cxf/ws/addressing/soap/MAPCodec.java
----------------------------------------------------------------------
diff --git 
a/rt/ws/addr/src/main/java/org/apache/cxf/ws/addressing/soap/MAPCodec.java 
b/rt/ws/addr/src/main/java/org/apache/cxf/ws/addressing/soap/MAPCodec.java
index c546edf..9cef853 100644
--- a/rt/ws/addr/src/main/java/org/apache/cxf/ws/addressing/soap/MAPCodec.java
+++ b/rt/ws/addr/src/main/java/org/apache/cxf/ws/addressing/soap/MAPCodec.java
@@ -855,7 +855,8 @@ public class MAPCodec extends AbstractSoapInterceptor {
                 }
             } else if (maps.getRelatesTo() == null
                 && maps.getAction() != null
-                && 
Names.WSA_DEFAULT_FAULT_ACTION.equals(maps.getAction().getValue())) {
+                && 
(Names.WSA_DEFAULT_FAULT_ACTION.equals(maps.getAction().getValue())
+                    || 
Names.WSA_DEFAULT_SOAP_FAULT_ACTION.equals(maps.getAction().getValue()))) {
                 //there is an Action header that points to a fault and no 
relatesTo.  Use the out map for the ID
                 Message m = message.getExchange().getOutMessage();
                 maps = ContextUtils.retrieveMAPs(m, false, true, false);

Reply via email to