PropertyDescriptor[] props = bd.beanInfo.getPropertyDescriptors();
for (PropertyDescriptor prop : props) {
Method writeMethod = prop.getWriteMethod();
if (writeMethod != null) {
Json json = writeMethod.getAnnotation(Json.class);
if (json == null || json.serialize()) {
bd.writableProps.put(prop.getName(), writeMethod);
} else {
log.debug("skipping property {} for {}", prop.getName(), clazz.getName());
}
}