You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by se...@apache.org on 2012/09/28 12:44:35 UTC

svn commit: r1391390 - /cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/client/ClientProxyImpl.java

Author: sergeyb
Date: Fri Sep 28 10:44:35 2012
New Revision: 1391390

URL: http://svn.apache.org/viewvc?rev=1391390&view=rev
Log:
[CXF-4496] Updating proxy code to check for WebApplicationException response mapper in case of HTTP errors and no exception types available in the signature

Modified:
    cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/client/ClientProxyImpl.java

Modified: cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/client/ClientProxyImpl.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/client/ClientProxyImpl.java?rev=1391390&r1=1391389&r2=1391390&view=diff
==============================================================================
--- cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/client/ClientProxyImpl.java (original)
+++ cxf/trunk/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/client/ClientProxyImpl.java Fri Sep 28 10:44:35 2012
@@ -37,6 +37,7 @@ import java.util.Map;
 import java.util.ResourceBundle;
 import java.util.logging.Logger;
 
+import javax.ws.rs.WebApplicationException;
 import javax.ws.rs.client.ClientException;
 import javax.ws.rs.container.AsyncResponse;
 import javax.ws.rs.core.HttpHeaders;
@@ -310,7 +311,11 @@ public class ClientProxyImpl extends Abs
     
     private static ResponseExceptionMapper<?> findExceptionMapper(Method m, Message message) {
         ProviderFactory pf = ProviderFactory.getInstance(message);
-        for (Class<?> exType : m.getExceptionTypes()) {
+        Class<?>[] exTypes = m.getExceptionTypes();
+        if (exTypes.length == 0) {
+            exTypes = new Class[]{WebApplicationException.class};
+        }
+        for (Class<?> exType : exTypes) {
             ResponseExceptionMapper<?> mapper = pf.createResponseExceptionMapper(exType);
             if (mapper != null) {
                 return mapper;