valid4j provides you with an option to customize the global assertion policy by implementing an org.valid4j.AssertiveProvider and register it as a service loader in META-INF/services...
valid4j also provides support for regular input validation using hamcrest-matchers throwing custom recoverable exceptions if validation fails.