code: public final String serialize(final Object o, final Collection<Class<? extends Converter<?>>> converterClasses) {
          final DelegatingConverter delegatingConverter = new DelegatingConverter();
  
          if (converterClasses != null) {
              for (Class<? extends Converter<?>> converterClass : converterClasses) {
                  delegatingConverter.addConverter(createConverter(converterClass));
              }
          }
  
          delegatingConverter.addConverter(new ConfigurationItemConverter());
          delegatingConverter.addConverter(getResourceConverter());
          delegatingConverter.addConverter(new StandardTypeConverter(delegatingConverter));
  
          delegatingConverter.initializeAll(_injectionManager);
  
          return delegatingConverter.toString(o);
      }
docs: Serializes a Java object to a String representation.
  
  @param o
  the object to serialize
  @param converterClasses
  an optional collection of custom converter classes
  @return a String representation of the Java object