private Converter<?, ?> buildConverter(Class<? extends Converter<?, ?>> converterType) {
        try {
            Converter<?, ?> converter = converterType.newInstance();
            return converter;
        } catch (Exception e) {
            throw new IllegalArgumentException("Invalid constructor for "+converterType.getCanonicalName());
        }
    }