Multi-tenacy utilizando banco de dados separados

Estou buscando uma forma de realizar a implementação de uma aplicação multi-tenancy separando cada cliente em um novo banco de dados, porém quero que seja possível adicionar novos bancos de dados sem que seja necessário alterar a aplicação, que seja possível cadastrar as novas bases em um banco de dados por exemplo, alguém possui alguma sugestão de como realizar essa implementação?

O hibernate tem essa implementação.

https://docs.jboss.org/hibernate/orm/4.2/devguide/en-US/html/ch16.html

Você pode separar por database ou se não quiser criar várias bases, eu aconselho fazer por schema.

Olá, obrigado pela resposta, dessa forma eu já havia visto, porém não entendi como posso utilizar o data source através do wildfly.

Você pode seguir este exemplo:

A teoria é que você precise implementar o provider capturando o datasource no braço de acordo com o tenant.