public void setValue(Object instance, Object value) {
checkValue( value );
try {
setter.invoke( instance, value );
} catch( IllegalArgumentException exception ) {
throw new SetPropertyException( getName(), getType(), value,
exception );
} catch( IllegalAccessException exception ) {
throw new SetPropertyException( getName(), getType(), value,
exception );
} catch( InvocationTargetException exception ) {
throw new SetPropertyException( getName(), getType(), value,
exception );
}
}