Моя ставка была бы в том, что ваш EAR # 2 разрешает контекст через JNDI, но контекст был связан EAR # 1 с загрузчиком классов EAR # 1;поэтому где-то в глубине API персистентности вы, вероятно, получите исключение ClassCastException, потому что класс, хотя и имеет одно и то же имя и пакет, был загружен другим загрузчиком классов.
Моя точка зрения заключается в том, что два EAR должны иметь разные JNDIимена для их единиц постоянства.Из вашего поста видно, что они одинаковые.
(На самом деле, упоминание о том, что вставка / обновление прекрасно работает, противоречит моей гипотезе, но кто знает.)