Начиная со спецификации Java EE 6.0 исключительные ситуации приложения по умолчанию наследуются
классами исключительных ситуаций производных классов.
Это поведение настраивается в аннотации @ApplicationException и в элементе <application-exception>
файла ejb-jar.xml.
Это правило помечает аннотацию javax.ejb.ApplicationException без
атрибута inherited и элемент <application-exception>
без элемента inherited в файле ejb-jar.xml.
@ApplicationException:
В Java EE 5.0 класс ExceptionB не считается производным от ApplicationException, а в Java EE 6.0
класс ExceptionB является производным от ApplicationException, поскольку наследуется от класса ExceptionA.
В Java EE 6.0 добавлен атрибут inherited со значением по умолчанию true,
поэтому все производные классы унаследованы от ApplicationException.
Можно сохранить поведение Java EE 5.0 следующими способами:
inherited = false в аннотацию.false
в подэлементе inherited элемента application-exception. Если есть файл описания версии 3.0, необходимо выполнить его миграцию на версию 3.1, включая схему XSD,
и указать значение false в подэлементе inherited элемента application-exception.com.ibm.websphere.ejbcontainer.EE5Compatibility контейнера
EJB WebSphere для сохранения совместимости с Java EE 5.Дополнительная информация: