Începând cu specificaţia Java EE 6.0, excepţiile de aplicaţie sunt moştenite implicit de clasele de excepţie ale subclasei.
Acest comportament poate fi configurat pentru adnotarea @ApplicationException sau în elementul
<application-exception> dintr-un fişier ejb-jar.xml.
Această regulă semnalează adnotarea javax.ejb.ApplicationException dacă nu are un atribut inherited moştenit
şi semnalează elementul <application-exception> dintr-un fişier
ejb-jar.xml care nu are definit elementul inherited.
@ApplicationException:
În Java EE 5.0, ExceptionB nu este considerată o ApplicationException, dar în Java EE 6.0
ExceptionB este o ApplicationException, deoarece este o extensie din clasa ExceptionA.
Java EE 6.0 a adăugat atributul inherited cu valoarea implicită true, astfel că toate clasele moştenite sunt
de asemenea ApplicationException.
Puteţi păstra comportamentul din Java EE 5.0 în următoarele feluri:
inherited = false.inherited
al elementului application-exception la false. Dacă aveţi un descriptor de
implementare versiunea 3.0 existent, trebuie să migraţi la un descriptor de implementare şi o schemă XSD versiunea 3.1
şi să setaţi subelementul inherited al elementului application-exception la false.com.ibm.websphere.ejbcontainer.EE5Compatibility pentru a menţine
compatibilitatea Java EE 5.Pentru informaţii suplimentare, vedeţi următoarele resurse: