code: public static void setProperty(Object bean, String property, Object value) throws InvocationTargetException{
          try{
              getSetterMethod(bean.getClass(), property).invoke(bean, value);
          }catch(IllegalAccessException ex){
              throw new ImpossibleException(ex); // because setter method is public
          }
      }
docs: Sets the value of the specified <code>property</code> in given <code>bean</code>
  
  @param bean      bean object
  @param property  property name whose value needs to be set
  @param value     value to be set
  
  @throws InvocationTargetException if method invocation fails
  @throws NullPointerException if <code>property</code> is not found in <code>bean</code> or it is readonly property