> Adding a new Converter for another entity-DTO pair (like User, Address, etc.) needs just creating a new UserConverterImpl class, implementing its own UserConverter, which in turn should implement GenericConverter.
This is exactly what is wrong.
Unnecessary complications resulting from not merely over-engineering but piling up completely unintelligible crap, produced in order to... well, use some Java 8 features.
Imagine that in math instead of doing algebraic simplification one would go into the opposite direction.
Same kind of madness, BTW, is going on in the realm of Javascript frameworks.
This is exactly what is wrong.
Unnecessary complications resulting from not merely over-engineering but piling up completely unintelligible crap, produced in order to... well, use some Java 8 features.
Imagine that in math instead of doing algebraic simplification one would go into the opposite direction.
Same kind of madness, BTW, is going on in the realm of Javascript frameworks.