public static Object invokeMethod(Method method, Object target, Object... params) {
        try {
            method.setAccessible(true);
            return method.invoke(target, params);
        } catch (IllegalAccessException e) {
            throw new UtilException("アクセスが不正です。", e);
        } catch (InvocationTargetException e) {
            throw new UtilException("メソッドの実行に失敗しました。", e);
        }
    }