Имя JNDI - это адрес для конкретного объекта, и они должны быть уникальными.Наличие двух имен JNDI похоже на то, когда у вас есть 2 номера в вашем мобильном телефоне для «alex».Нет никакого способа узнать, по какому номеру вы набираете.
Что бы я сделал, что должно работать для любой реализации JPA, - это иметь два PU в вашем persistent.xml, один с источником данных JNDI, а другой длядругой источник данных JNDI.Это также имеет смысл, поскольку у вас могут не быть одинаковые бизнес-объекты в обоих источниках данных.
Затем, когда вы получите EntityManager, явно укажите, какой PU вы хотите.Вы можете установить это в файле конфигурации или решить его динамически другим способом.
entfactory = OpenJPAPersistence.createEntityManagerFactory( *persistentUnitName*, (String) null );
Надеюсь, это поможет -
-Alex