if ((!getter.getName().equals("getClass"))
if (getter != null) { if ((!getter.getName().equals("getClass"))
    public static Map getFieldToGetter(Class c) throws IntrospectionException {        synchronized (classToFieldToGetter) {            Map retval = (Map) classToFieldToGetter.get(c);            if (retval == null) {                PropertyDescriptor[] pd = Introspector.getBeanInfo(c).getPropertyDescriptors();                retval = new HashMap();                Map fieldToSetter = new HashMap();                for (int i = 0; i < pd.length; i++) {                    try {                        Method getter = pd[i].getReadMethod();                        if ((!getter.getName().equals("getClass"))                                && (!getter.getName().equals("getId"))) {                            Field field = c.getDeclaredField(pd[i].getName());                            retval.put(field, getter);                            Method setter = pd[i].getWriteMethod();                            fieldToSetter.put(field, setter);                        }                    } catch (NoSuchFieldException e) {                    }                }                classToFieldToGetter.put(c, retval);                classToFieldToSetter.put(c, fieldToSetter);            }            return retval;        }    }