Я считаю, что это проблема с вашим EJB-контейнером.Я не уверен, что вы используете (JBoss, WebSphere, WebLogic и т. Д.), И я не являюсь экспертом ни по одному из них (мы давно прекратили использовать EJB), но всякий раз, когда вы получаете ошибку NoClassDefFound, это означает, чтоТекущий ClassLoader (тот, который загрузил .class идентификатор вашего кода «в») не может найти ссылочный класс.
Я знаю много-много лун назад, у JBoss была идея «Универсальный ClassLoader».По сути, все JAR / EAR / WAR были загружены в один большой пул.Проблема в том, что много раз код нуждался в разных версиях одного и того же JAR, и они не всегда были совместимы.Кроме того, технически существует угроза безопасности, если кто-то добавит «собственный» класс / JAR в ваш микс впереди вашего.Я думаю, что именно в JBoss 3.5 они отказались от Universal ClassLoader, так как я помню, что нашему приложению нужно было МНОГО работы, чтобы исправить ситуацию.Большая часть этого была для нас проблемой упаковки.