Repository: tomee
Updated Branches:
  refs/heads/master 547bd0dab -> 38184f38d


TOMEE-1534 unwrap EJBException for jaxrs endpoints


Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/38184f38
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/38184f38
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/38184f38

Branch: refs/heads/master
Commit: 38184f38dbc57d3ef12fd8f457ed8805d748ea8d
Parents: 547bd0d
Author: Romain Manni-Bucau <[email protected]>
Authored: Fri Mar 27 12:25:24 2015 +0100
Committer: Romain Manni-Bucau <[email protected]>
Committed: Fri Mar 27 12:25:24 2015 +0100

----------------------------------------------------------------------
 .../org/apache/openejb/server/cxf/rs/OpenEJBEJBInvoker.java     | 5 +++++
 1 file changed, 5 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tomee/blob/38184f38/server/openejb-cxf-rs/src/main/java/org/apache/openejb/server/cxf/rs/OpenEJBEJBInvoker.java
----------------------------------------------------------------------
diff --git 
a/server/openejb-cxf-rs/src/main/java/org/apache/openejb/server/cxf/rs/OpenEJBEJBInvoker.java
 
b/server/openejb-cxf-rs/src/main/java/org/apache/openejb/server/cxf/rs/OpenEJBEJBInvoker.java
index 2d53b52..90687a6 100644
--- 
a/server/openejb-cxf-rs/src/main/java/org/apache/openejb/server/cxf/rs/OpenEJBEJBInvoker.java
+++ 
b/server/openejb-cxf-rs/src/main/java/org/apache/openejb/server/cxf/rs/OpenEJBEJBInvoker.java
@@ -37,6 +37,7 @@ import java.util.Collections;
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.Map;
+import javax.ejb.EJBException;
 
 public class OpenEJBEJBInvoker extends JAXRSInvoker {
     private final Map<Class<?>, Collection<Class<?>>> contextTypes = new 
HashMap<Class<?>, Collection<Class<?>>>();
@@ -102,6 +103,10 @@ public class OpenEJBEJBInvoker extends JAXRSInvoker {
                 }
             }
 
+            if (EJBException.class.isInstance(cause)) {
+                cause = EJBException.class.cast(cause).getCause();
+            }
+
             if (ApplicationException.class.isInstance(cause) && 
Exception.class.isInstance(cause.getCause())) {
                 throw 
Exception.class.cast(ApplicationException.class.cast(cause).getCause());
             }

Reply via email to