Repository: tomee
Updated Branches:
  refs/heads/tomee-1.7.x 81c8f3af5 -> fdadd4fa8


Resolves #TOMEE-1897 for version 1.7.4


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

Branch: refs/heads/tomee-1.7.x
Commit: 6f169571d151a53e318506548a33e2432f59edc1
Parents: 81c8f3a
Author: AndyGee <[email protected]>
Authored: Fri Feb 10 00:32:23 2017 +0100
Committer: AndyGee <[email protected]>
Committed: Fri Feb 10 00:32:23 2017 +0100

----------------------------------------------------------------------
 .../openejb/server/cxf/rs/CdiResourceProvider.java     | 13 ++++++++++---
 1 file changed, 10 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tomee/blob/6f169571/server/openejb-cxf-rs/src/main/java/org/apache/openejb/server/cxf/rs/CdiResourceProvider.java
----------------------------------------------------------------------
diff --git 
a/server/openejb-cxf-rs/src/main/java/org/apache/openejb/server/cxf/rs/CdiResourceProvider.java
 
b/server/openejb-cxf-rs/src/main/java/org/apache/openejb/server/cxf/rs/CdiResourceProvider.java
index 3356af5..506a786 100644
--- 
a/server/openejb-cxf-rs/src/main/java/org/apache/openejb/server/cxf/rs/CdiResourceProvider.java
+++ 
b/server/openejb-cxf-rs/src/main/java/org/apache/openejb/server/cxf/rs/CdiResourceProvider.java
@@ -24,6 +24,8 @@ import org.apache.openejb.Injection;
 import org.apache.openejb.InjectionProcessor;
 import org.apache.openejb.OpenEJBException;
 import org.apache.openejb.rest.ThreadLocalContextManager;
+import org.apache.openejb.util.LogCategory;
+import org.apache.openejb.util.Logger;
 import org.apache.webbeans.component.InjectionTargetBean;
 import org.apache.webbeans.config.WebBeansContext;
 import org.apache.webbeans.container.BeanManagerImpl;
@@ -273,10 +275,15 @@ public abstract class CdiResourceProvider implements 
ResourceProvider {
         @Override
         public Object create() {
             try {
-                toClean = bm.createCreationalContext(bean);
-                return bm.getReference(bean, bean.getBeanClass(), toClean);
+                if (null != bean) {
+                    toClean = bm.createCreationalContext(bean);
+                    return bm.getReference(bean, bean.getBeanClass(), toClean);
+                } else {
+                    throw new InjectionException("Bean is null for: " + 
clazz.getName());
+                }
             } catch (final InjectionException ie) {
-                final String msg = bean + " can not be instantiated";
+                final String msg = "Failed to instantiate: " + bean;
+                Logger.getInstance(LogCategory.OPENEJB_CDI, 
this.getClass()).error(msg, ie);
                 throw new 
WebApplicationException(Response.serverError().entity(msg).build());
             }
         }

Reply via email to