Program: 88931
Project: 88931
Buggy source:
public static void main(String[] args) throws IOException, InterruptedException {
  ModelFactory factory=JMobsterFactory.getModelFactoryBuilder().setFieldScanMode(FieldScanMode.DIRECT_FIELD_ACCESS).setFieldGroups(GroupMode.ANY_OF_REQUIRED).setValidatorGroups(GroupMode.ANY_OF_REQUIRED,String.class,Integer.class).setValidatorFactory(new JSR303ValidatorFactory()).build();
  System.out.println("String_Node_Str");
  final int n=1000;
  Collection<Class> classesToConvert=new ArrayList<Class>(n);
  for (int i=0; i < n; ++i) {
    if (i % 2 == 0) {
      classesToConvert.add(DemoClasses.BeanPropertyDemo.class);
    }
 else {
      classesToConvert.add(DemoClasses.MyModelDto.class);
    }
  }
  System.out.print("String_Node_Str");
  System.out.println("String_Node_Str");
  Collection<Model> models=factory.createAll(classesToConvert);
  DataWriter modelWriter=new StringBufferWriter();
  CachedModelProvider provider1=new CachedModelProvider(CachedModelProvider.WriteMode.PRETTY,modelWriter);
  JavaScriptWriter javaScriptWriter=new JavaScriptWriter(provider1.getDataWriter());
  FieldValueConverter converter=new JavaToJSValueConverter(ConverterMode.NULL_AS_DEFAULT,EnumConverter.EnumMode.STRING,JavaToJSValueConverter.ISO_8601_DATE_TIME_TZ_PATTERN);
  BackboneModelProcessor backboneModelProcessor=new BackboneModelProcessor.Builder(javaScriptWriter,OutputMode.JSON).setValueConverter(converter).setModelProcessors(new DefaultValueProcessor.Builder().build(),new ValidatorProcessor.Builder().build()).build();
  ModelGenerator generator=JMobsterFactory.getModelGenerator(backboneModelProcessor);
  System.out.print("String_Node_Str");
  System.out.println("String_Node_Str");
  generator.processAll(models);
  System.out.println(modelWriter.toString());
  System.out.println("String_Node_Str");
}

Fixed version (ground truth):
public static void main(String[] args) throws IOException, InterruptedException {
  ModelFactory factory=JMobsterFactory.getModelFactoryBuilder().setFieldScanMode(FieldScanMode.DIRECT_FIELD_ACCESS).setFieldGroups(GroupMode.ANY_OF_REQUIRED).setValidatorGroups(GroupMode.ANY_OF_REQUIRED,String.class,Integer.class).setValidatorFactory(new JSR303ValidatorFactory()).build();
  System.out.println("String_Node_Str");
  final int n=1;
  Collection<Class> classesToConvert=new ArrayList<Class>(n);
  for (int i=0; i < n; ++i) {
    if (i % 2 == 0) {
      classesToConvert.add(DemoClasses.BeanPropertyDemo.class);
    }
 else {
      classesToConvert.add(DemoClasses.MyModelDto.class);
    }
  }
  System.out.print("String_Node_Str");
  System.out.println("String_Node_Str");
  Collection<Model> models=factory.createAll(classesToConvert);
  DataWriter modelWriter=new StringBufferWriter();
  CachedModelProvider provider1=new CachedModelProvider(CachedModelProvider.WriteMode.PRETTY,modelWriter);
  JavaScriptWriter javaScriptWriter=new JavaScriptWriter(provider1.getDataWriter());
  FieldValueConverter converter=new JavaToJSValueConverter(ConverterMode.NULL_AS_DEFAULT,EnumConverter.EnumMode.STRING,JavaToJSValueConverter.ISO_8601_DATE_TIME_TZ_PATTERN);
  BackboneModelProcessor backboneModelProcessor=new BackboneModelProcessor.Builder(javaScriptWriter,OutputMode.JSON).setValueConverter(converter).setModelProcessors(new DefaultValueProcessor.Builder().build(),new ValidatorProcessor.Builder().build()).build();
  ModelGenerator generator=JMobsterFactory.getModelGenerator(backboneModelProcessor);
  System.out.print("String_Node_Str");
  System.out.println("String_Node_Str");
  generator.processAll(models);
  System.out.println(modelWriter.toString());
  System.out.println("String_Node_Str");
}