Обычно большинство, если не все кодовые источники (места, откуда загружаются классы), используемые загрузчиками классов сервера приложений, находятся внутри установки сервера приложений.В случае MDB (или EJB) по этому вопросу источники кодов содержатся в модуле EJB (файл JAR EJB) или в архиве приложения (файл EAR).Во время выполнения контейнер управляет, где и как этот источник кода управляется (включая его местоположение), и может не быть простого способа определить это местоположение.Другими словами, было бы крайне сложно использовать развернутые JAR-файлы в контейнере, в classpath вашего клиентского приложения (при условии, что они находятся на одной машине).использование одних и тех же JAR-файлов как в клиентском приложении, так и в приложении на сервере означает наличие на сервере пользовательского загрузчика классов, который настроен для чтения определенных классов из общего общего JAR-файла.Рекомендуется, чтобы загрузчик классов всегда откладывал загрузку классов до родительских загрузчиков классов, прежде чем пытаться разрешить какой-либо класс.
Ваш клиент может затем использовать тот же общий JAR-файл, задав соответствующий путь к классу (или используятот же пользовательский загрузчик классов).
Я должен предупредить вас, что написание пользовательского загрузчика классов непросто для тех, кто не понимает динамику загрузки классов на сервере приложений Java EE.