private void wrapExceptionAsFault(Message message, RuntimeException ex) { String description = getServiceInfo(message); message.setContent(Exception.class, ex); unwind(message); Exception ex2 = message.getContent(Exception.class); if (ex2 == null) { ex2 = ex; } FaultListener flogger = (FaultListener) message.getContextualProperty(FaultListener.class.getName()); boolean useDefaultLogging = true; if (flogger != null) { useDefaultLogging = flogger.faultOccurred(ex2, description, message); } if (useDefaultLogging) { doDefaultLogging(message, ex2, description); } if (message.getExchange() != null && message.getContent(Exception.class) != null) { message.getExchange().put(Exception.class, ex2); } if (faultObserver != null && !isOneWay(message)) { // CXF-5629. when exchange is one way and robust, it becomes req-resp in order to // send the fault message.getExchange().setOneWay(false); faultObserver.onMessage(message); } }
private void wrapExceptionAsFault(Message message, RuntimeException ex) { String description = getServiceInfo(message); message.setContent(Exception.class, ex); unwind(message); Exception ex2 = message.getContent(Exception.class); if (ex2 == null) { ex2 = ex; } FaultListener flogger = (FaultListener) message.getContextualProperty(FaultListener.class.getName()); boolean useDefaultLogging = true; if (flogger != null) { useDefaultLogging = flogger.faultOccurred(ex2, description, message); } if (useDefaultLogging) { doDefaultLogging(message, ex2, description); } if (message.getExchange() != null && message.getContent(Exception.class) != null) { message.getExchange().put(Exception.class, ex2); } if (faultObserver != null && !isOneWay(message)) { // CXF-5629. when exchange is one way and robust, it becomes req-resp in order to // send the fault message.getExchange().setOneWay(false); faultObserver.onMessage(message); } }