erase generics for proxy impl until we support multiple levels

git-svn-id: https://svn.apache.org/repos/asf/geronimo/components/config/trunk@1832152 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/impl/src/main/java/org/apache/geronimo/config/cdi/ConfigurationHandler.java b/impl/src/main/java/org/apache/geronimo/config/cdi/ConfigurationHandler.java
index 8f0d7ee..9f714d1 100644
--- a/impl/src/main/java/org/apache/geronimo/config/cdi/ConfigurationHandler.java
+++ b/impl/src/main/java/org/apache/geronimo/config/cdi/ConfigurationHandler.java
@@ -100,7 +100,10 @@
 
                 final Class<?> clazz = Class.class.cast(pt.getRawType());
                 if (Collection.class.isAssignableFrom(clazz)) {
-                    collectionConversionType = Class.class.cast(pt.getActualTypeArguments()[0]);
+                    final Type arg0 = pt.getActualTypeArguments()[0];
+                    collectionConversionType = Class.class.cast(ParameterizedType.class.isInstance(arg0) ?
+                            // mainly to tolerate Class<?> as an arg
+                            ParameterizedType.class.cast(arg0).getRawType() : Class.class.cast(arg0));
                     lookupType = String.class;
                     if (Set.class.isAssignableFrom(clazz)) {
                         collectionCollector = toSet();
diff --git a/impl/src/test/java/org/apache/geronimo/config/test/internal/ProxyTest.java b/impl/src/test/java/org/apache/geronimo/config/test/internal/ProxyTest.java
index 2e1b34a..2fe665c 100644
--- a/impl/src/test/java/org/apache/geronimo/config/test/internal/ProxyTest.java
+++ b/impl/src/test/java/org/apache/geronimo/config/test/internal/ProxyTest.java
@@ -67,6 +67,7 @@
         assertEquals(proxy.key3(), "def");
         assertEquals(proxy.list(), asList("a", "b", "1"));
         assertEquals(proxy.listDefaults(), asList(1, 2, 1));
+        assertEquals(proxy.listClasses(), asList(String.class, Integer.class));
     }
 
     @Test
@@ -96,6 +97,9 @@
         @ConfigProperty
         Collection<String> list();
 
+        @ConfigProperty(defaultValue = "java.lang.String,java.lang.Integer")
+        Collection<Class<?>> listClasses();
+
         @ConfigProperty(defaultValue = "1,2,1")
         Collection<Integer> listDefaults();
     }