code: public static Object toObject(COMObject parent, Variant variant, String key, Object defaultValue) {
  	try {
  	    return toObject(parent, variant, key);
  	}
  	catch (ExpressionException ee) {
  	    return defaultValue;
  	}
      }
docs: translate a Variant Object to Object, when it is a Dispatch translate it to COMWrapper
  
  @param parent
  @param variant
  @param key
  @return Object from Variant