public static boolean hasProperty(Class clazz, String name) {
        String key = clazz.getName() + "#" + name;
        if (searchCache.containsKey(key)) {
            return searchCache.get(key).booleanValue();
        } else {
            boolean found = true;
            try {
                getProperty(clazz, name);
            } catch (Throwable ex) {
                found = false;
            }

            searchCache.put(key, found);
            return found;
        }
    }