diff --git a/common/source/java/ch/systemsx/cisd/common/utilities/BeanUtils.java b/common/source/java/ch/systemsx/cisd/common/utilities/BeanUtils.java index 1730c568459c9c40342a361f90fe3095acbd8532..4e866af7241241d22e7068eb706ff90b2e23e472 100644 --- a/common/source/java/ch/systemsx/cisd/common/utilities/BeanUtils.java +++ b/common/source/java/ch/systemsx/cisd/common/utilities/BeanUtils.java @@ -709,7 +709,22 @@ public final class BeanUtils { return null; } - return getter.invoke(bean, ArrayUtils.EMPTY_OBJECT_ARRAY); + final boolean isAccessible = getter.isAccessible(); + if (isAccessible == false) + { + getter.setAccessible(true); + } + try + { + final Object oldBean = getter.invoke(bean, ArrayUtils.EMPTY_OBJECT_ARRAY); + return oldBean; + } finally + { + if (isAccessible == false) + { + getter.setAccessible(false); + } + } } private static Method getConverterMethod(Method setter, Object sourceBean, Converter converter)