Bug 127861 [DataBinding] Mark API provisional
bundles/org.eclipse.jface.databinding/src/org/eclipse/jface/databinding/beans/NestedUpdatableFactory.java
}
					}
					if (discoveredClazz != null) {
						targetClazz = discoveredClazz;
					} else {
						throw new BindingException("Error using prototype class to determine binding types."); 
					}
				} catch (BindingException be) {
					throw be;
				} catch (Exception e) {
					e.printStackTrace();
					throw new BindingException("Exeception using prototype class to determine binding types.", e); 
				}
				lastChildUpdatable = bindingContext.createUpdatable(new Property(targetObject,
						nextDesc, targetClazz, new Boolean(false)));
				targetObject = lastChildUpdatable;
			}
		} else {
			String[] properties = (String[]) nestedProperty.getPropertyID();
			for (int i = 0; i < properties.length; i++) {
				String nextDesc = properties[i];
				Class clazz = nestedProperty.getTypes()[i];
				lastChildUpdatable = bindingContext.createUpdatable(new Property(targetObject,
						nextDesc, clazz, new Boolean(false)));
				targetObject = lastChildUpdatable;
			}
		}
		return lastChildUpdatable;
	}
}