modules/core/src/main/java/org/rapidpm/microservice/rest/ddi/PoJoDDIRessourceFactory.java
public void registered(ResteasyProviderFactory factory) {
    System.out.println("registered - factory = " + factory);
    ResourceConstructor constructor = this.resourceClass.getConstructor();
    if (constructor == null) {
      final Class<?> clazz = this.resourceClass.getClazz();
      final Class<?> aClass = DI.getSubTypesWithoutInterfacesAndGeneratedOf(clazz).stream().findFirst().get();
      constructor = ResourceBuilder.constructor(aClass);
    }
//
    if (constructor == null) {
      throw new RuntimeException(Messages.MESSAGES.unableToFindPublicConstructorForClass(this.scannableClass.getName()));
    } else {
      this.constructorInjector = factory.getInjectorFactory().createConstructor(constructor , factory);
      this.propertyInjector = factory.getInjectorFactory().createPropertyInjector(this.resourceClass , factory);
    }
  }
public void registered(ResteasyProviderFactory factory) {
    System.out.println("registered - factory = " + factory);
    ResourceConstructor constructor = this.resourceClass.getConstructor();
    if (constructor == null) {
      final Class<?> clazz = this.resourceClass.getClazz();
      final Class<?> aClass = DI.getSubTypesWithoutInterfacesAndGeneratedOf(clazz).stream().findFirst().get();
      constructor = ResourceBuilder.constructor(aClass);
    }
//
    if (constructor == null) {
      throw new RuntimeException(Messages.MESSAGES.unableToFindPublicConstructorForClass(this.scannableClass.getName()));
    } else {
      this.constructorInjector = factory.getInjectorFactory().createConstructor(constructor , factory);
      this.propertyInjector = factory.getInjectorFactory().createPropertyInjector(this.resourceClass , factory);
    }
  }
}