private Object getBeanPropInternal(Object object, Object key) throws PropertyAccessException { try { return method.invoke(object, key); } catch (ClassCastException e) { throw PropertyUtility.getMismatchException(method, object, e); } catch (InvocationTargetException e) { throw PropertyUtility.getInvocationTargetException(method, e); } catch (IllegalAccessException e) { throw PropertyUtility.getIllegalAccessException(method, e); } catch (IllegalArgumentException e) { throw PropertyUtility.getIllegalArgumentException(method, e); } }