Transform Dynamic Validation Metadata to Runtime Java Bean Validation Constraint Annotations
||International Journal of Computer Trends and Technology (IJCTT)||
|© 2019 by IJCTT Journal|
|Year of Publication : 2019|
|Authors : Vijay Kumar Pandey|
|DOI : 10.14445/22312803/IJCTT-V67I3P121|
MLA Style: Vijay Kumar Pandey, "Transform Dynamic Validation Metadata to Runtime Java Bean Validation Constraint Annotations" International Journal of Computer Trends and Technology 67.3 (2019): 102-108.
APA Style:Vijay Kumar Pandey, (2019). Transform Dynamic Validation Metadata to Runtime Java Bean Validation Constraint Annotations. International Journal of Computer Trends and Technology, 67(3), 109-112.
The paperis intended to provide an in-depth understanding of how to transform dynamic validation metadata to runtime java class(es) with relevant fields annotated with proper bean validation annotations, which is dynamically generated based on the validation metadata. This dynamic class generation is performed through an open source library ByteBuddy (which depends on ASM - ASM is an all-purpose Java bytecode manipulation and analysis framework). This understanding will help developers to build dynamic validation feature in their system, while validating the properties of a dynamic screen that is built with the help of dynamic properties metadata.The intended audience for this article includesapplication architects, software designers and software programmers who participate in the design, architecting and development of robust and complex enterprise-wide applications based on Java and Jakarta EE (or spring) and want to utilize the Java Bean Validation (1.1 or 2) in dynamic scenarios.
 Bean Validation 1.1 JSR 349 - https://beanvalidation.org/1.1/
 Bean Validation 2.0 JSR 380- https://beanvalidation.org/2.0/
 Byte Buddy - https://bytebuddy.net
 ASM - https://asm.ow2.io/
 Jakarta Enterprise Edition (JEE) - https://jakarta.ee/
 JEE 7 Specification - https://jcp.org/en/jsr/detail?id=342
 JEE 8 Specification - https://jcp.org/en/jsr/detail?id=366
Java Bean Validation (BV), Byte Buddy, ASM, Jakarta EE.