Проблема была в нескольких ссылках в наших профилях развертывания. Мы создали профиль развертывания для КАЖДОГО EJB. Это означало, что у каждого EJB был свой собственный ejb-jar.xml (этот файл содержал описание всех EJBS в проекте). Поэтому каждый раз, когда JDeveloper создает EJB, он помещает дескриптор всех EJBS в каждый сгенерированный EJB, вызывая NxN количество ссылок. Поэтому Nx (N-1) дополнительных ссылок.
Теперь ключевым моментом является то, что Oracle Application Server 10.1.2.3.0 и ниже не заботился об этих повторных ссылках. Однако, как мы видим, версия 10.1.3.1.4 - это совсем другая версия, и она сломалась.
Наше исправление: иметь только 1 профиль развертывания EJB, который содержит все классы EJB и POJO, которые они используют. Помните, до того, как был 1 профиль EJB для каждого EJB ... Все это позволяло Jdeveloper (что является дерьмом IMHO) правильно создать действительный EAR. Именно это и вызвало сочетание дерьма Jdeveloper и Oracle Application Server.