[ 
https://issues.apache.org/jira/browse/OPENEJB-980?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12658988#action_12658988
 ] 

Jacek Laskowski commented on OPENEJB-980:
-----------------------------------------

Interesting. I couldn't find an answer to the inheritance of 
@ApplicationException. Do you have any reference where it says that 
@ApplicationException is inherited? I couldn't find it's not allowed either so 
we could relax it to suit your needs, but am wondering if it's just a 
relaxation or being not EJB3 compliant.

> @ApplicationException is not being inherited
> --------------------------------------------
>
>                 Key: OPENEJB-980
>                 URL: https://issues.apache.org/jira/browse/OPENEJB-980
>             Project: OpenEJB
>          Issue Type: Bug
>    Affects Versions: 3.1
>            Reporter: Geoff Callender
>
> When @ApplicationException(rollback = true) is annotated on an exception 
> thrown by a session bean then all is well - the client receives the exception.
> But if the annotation is moved up to a superclass of the exception then all 
> is not well - the client receives EJBTransactionRolledbackException.
> In the app server I am porting from the following worked OK, and I believe it 
> is the correct behaviour:
> public interface DogServiceRemote {
>     void createDog(Dog dog) throws BusinessException;
> }
> @ApplicationException(rollback = true)
> abstract public class BusinessException extends Exception {
> ...
> }
> public class ValueRequiredException extends BusinessException {
> ...
> }
> where createDog(...) throws many different subclasses of BusinessException, 
> none of which is annotated with @ApplicationException.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to