cxf-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From dk...@apache.org
Subject svn commit: r797651 - /cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/support/JaxWsImplementorInfo.java
Date Fri, 24 Jul 2009 20:59:07 GMT
Author: dkulp
Date: Fri Jul 24 20:59:07 2009
New Revision: 797651

URL: http://svn.apache.org/viewvc?rev=797651&view=rev
Log:
Check parents for the Provider interface as well

Modified:
    cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/support/JaxWsImplementorInfo.java

Modified: cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/support/JaxWsImplementorInfo.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/support/JaxWsImplementorInfo.java?rev=797651&r1=797650&r2=797651&view=diff
==============================================================================
--- cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/support/JaxWsImplementorInfo.java
(original)
+++ cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/support/JaxWsImplementorInfo.java
Fri Jul 24 20:59:07 2009
@@ -309,13 +309,17 @@
 
     public Class<?> getProviderParameterType() {
         // The Provider Implementor inherits out of Provider<T>
-        Type intfTypes[] = implementorClass.getGenericInterfaces();
-        for (Type t : intfTypes) {
-            Class<?> clazz = JAXBEncoderDecoder.getClassFromType(t);
-            if (Provider.class == clazz) {
-                Type paramTypes[] = ((ParameterizedType)t).getActualTypeArguments();
-                return JAXBEncoderDecoder.getClassFromType(paramTypes[0]);
+        Class<?> c = implementorClass;
+        while (c != null) {
+            Type intfTypes[] = c.getGenericInterfaces();
+            for (Type t : intfTypes) {
+                Class<?> clazz = JAXBEncoderDecoder.getClassFromType(t);
+                if (Provider.class == clazz) {
+                    Type paramTypes[] = ((ParameterizedType)t).getActualTypeArguments();
+                    return JAXBEncoderDecoder.getClassFromType(paramTypes[0]);
+                }
             }
+            c = c.getSuperclass();
         }
         return null;
     }



Mime
View raw message