reta commented on a change in pull request #850:
URL: https://github.com/apache/cxf/pull/850#discussion_r707878616



##########
File path: 
core/src/main/java/org/apache/cxf/interceptor/FaultOutInterceptor.java
##########
@@ -81,6 +82,15 @@ public void handleMessage(Message message) {
 
             MessagePartInfo part = fi.getFirstMessagePart();
             DataBinding db = service.getDataBinding();
+            boolean faultDetail = cause instanceof SOAPFaultException
+                    && ((SOAPFaultException)cause).getFault().hasDetail();
+            if (faultDetail) {
+                //the fault detail is already set and we don't need to write
+                //Writes the SoapFaultException to detail will go into an 
infinite loop because
+                //SoapFaultException's cause field is itself

Review comment:
       I am wondering if we should specifically check for the loop in 
`SoapFaultException`, following the `getCause()` chain? It seems like otherwise 
we are cutting off `if (isDOMSupported(db)) {` branch altogether in some cases 
(not sure how important it is to be fair).




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to