Manejar múltiples EntityManager en la aplicación Java EE

Tengo una aplicación Java EE con aproximadamente 10 EntityManagers (la cantidad de ME probablemente aumentará). Mi aplicación también contiene muchos beans sin estado, con estado y con mensajes.

En lugar de inyectar en cada frijol mis EM con@PersistenceContext (y 2 métodos para detectar qué EM usar para el usuario), probablemente almacene todo eso dentro de un bean singleton y accedo a él con otros beans. Así, no te preocupes por la mantenibilidad.

Sin embargo, ¿es seguro para subprocesos almacenar EMs dentro de un bean singleton? ¿Puede aparecer un cuello de botella?

Otra solución es crear una clase abstracta y todos los beans la ampliarán.

¿Cuál es la mejor solución?

Respuestas a la pregunta(3)

Su respuesta a la pregunta