Nom de l'unité de persistance dynamique JPA

J'ai besoin d'un moyen dynamique d'spécifier l'unité de persistance dans un EJB.

Exemple simplifié:

J'ai une demande à l'aide de plusieurs bases de données des banques de données.
Chacun des magasins de données sont structurellement les mêmes.
Selon le client qui se connecte à l'application, j'ai besoin d'accéder aux données de
une banque de données spécifique.

Donc, je voudrais utiliser la même EJB, de sorte que la logique d'entreprise n'est pas dupliqué,
mais alors il suffit de choisir la bonne unité de persistance basé sur le client.

Jusqu'à ce point, je n'ai injecté directement à l'entité gestionnaire de l'unité de persistance nom codé en dur.
Est il possible que je peux dynamiquement injecter de l'entité gestionnaire de la nécessaire unité de persistance attaché à l'EJB?
Aussi, pouvez-unités de persistance être ajoutés dynamiquement au cours de l'exécution?
J'ai actuellement pour spécifier l'unité de persistance dans l'persistence.xml fichier.
Idéalement, je voudrais créer des piscines sur le serveur jdbc/db1, jdbc/db2 etc tout le système est en cours d'exécution. Puis il suffit de l'ajouter à la centrale de base de données client et de le lier à un client, de sorte que lorsque le client se connecte, il va vérifier le nom de la piscine, et de l'utiliser lors de l'appel de l'EJB pour obtenir l'unité de persistance.

Je suis encore vraiment nouveau dans le développement Java EE. Toute aide serait grandement appréciée.

source d'informationauteur likenoother