Мы планируем приложение с использованием архитектуры EJB, JPA (постоянство) и JSF (Primefaces) на JBoss EAP 6.4. В зависимости от того, как данные хранятся в базе данных или какова природа приложения, нам также необходимо использовать/внедрять безопасность на основе ролей на прикладном уровне. Мы можем создать несколько пулов подключений к БД (к одному и тому же экземпляру БД) в контейнере JBoss, и каждый JNDI связан с определенной ролью БД. Другими словами, если я использую соединение JNDI_Role1, то оно будет возвращать строки из таблицы БД в соответствии с Роль1, а если я использую соединение JNDI_Role2, то оно будет возвращать строки из той же таблицы БД в соответствии с Роль2, которые будут отличаться от Роли1 и так далее. У нас есть 4 разных роли, созданных в БД, поэтому 4 разных пула соединений JNDI в контейнере JBoss.
Теперь, могу ли я реализовать это в моем слое Persistence? Если да, то как я могу это сделать? Должен ли я создавать несколько экземпляров EntityManager, привязанных к каждому пулу соединений/JNDI? Буду очень признателен за любые предложения с образцом кода!
Заранее спасибо!!