org.apache.cxf.common.util
Class ReflectionUtil
java.lang.Object
org.apache.cxf.common.util.ReflectionUtil
public final class ReflectionUtil
- extends Object
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
getDeclaredField
public static Field getDeclaredField(Class<?> cls,
String name)
getDeclaredConstructor
public static Constructor getDeclaredConstructor(Class<?> cls,
Class<?>... args)
getConstructor
public static Constructor getConstructor(Class<?> cls,
Class<?>... args)
getDeclaredMethods
public static Method[] getDeclaredMethods(Class<?> cls)
getDeclaredFields
public static Field[] getDeclaredFields(Class<?> cls)
setAccessible
public static <T extends AccessibleObject> T setAccessible(T o)
setAccessible
public static <T extends AccessibleObject> T setAccessible(T o,
boolean b)
getPackagesFromJar
public static List<String> getPackagesFromJar(File jarFile)
throws IOException
- Throws:
IOException
getPropertyDescriptorsAvoidSunBug
public static PropertyDescriptor[] getPropertyDescriptorsAvoidSunBug(Class<?> refClass,
BeanInfo beanInfo,
Class<?> beanClass,
PropertyDescriptor[] propertyDescriptors)
- create own array of property descriptors to:
- prevent memory leaks by Introspector's cache
- get correct type for generic properties from superclass
that are limited to a specific type in beanClass
see http://bugs.sun.com/view_bug.do?bug_id=6528714
we cannot use BeanUtils.getPropertyDescriptors because of issue SPR-6063
- Parameters:
refClass
- calling class for class loading.beanInfo
- Bean in questionbeanClass
- class for bean in questionpropertyDescriptors
- raw descriptors
- Returns:
findMethod
public static Method findMethod(Class<?> cls,
String name,
Class<?>... params)
- Try to find a method we can use. If the object implements a public
interface that has the public version of that method, we'll use the interface
defined method in case the actual instance class is not public
Apache CXF