Author: rmannibucau
Date: Sat Oct 6 22:01:50 2012
New Revision: 1395180
URL: http://svn.apache.org/viewvc?rev=1395180&view=rev
Log:
TOMEE-451 using webapp webbeanscontext instead of app webbeanscontext for
injections if available (allow to inject cdi beans in war of ear)
Modified:
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/cdi/WebappBeanManager.java
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/WebContext.java
Modified:
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/cdi/WebappBeanManager.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/cdi/WebappBeanManager.java?rev=1395180&r1=1395179&r2=1395180&view=diff
==============================================================================
---
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/cdi/WebappBeanManager.java
(original)
+++
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/cdi/WebappBeanManager.java
Sat Oct 6 22:01:50 2012
@@ -198,7 +198,7 @@ public class WebappBeanManager extends B
@Override
public void validate(InjectionPoint injectionPoint) {
super.validate(injectionPoint);
- getParentBm().validate(injectionPoint); // TODO: check it
+ // getParentBm().validate(injectionPoint); // prevent injections from
webapp only
}
@Override
Modified:
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/WebContext.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/WebContext.java?rev=1395180&r1=1395179&r2=1395180&view=diff
==============================================================================
---
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/WebContext.java
(original)
+++
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/WebContext.java
Sat Oct 6 22:01:50 2012
@@ -94,7 +94,7 @@ public class WebContext {
public Object newInstance(Class beanClass) throws OpenEJBException {
- final WebBeansContext webBeansContext =
getAppContext().getWebBeansContext();
+ final WebBeansContext webBeansContext = getWebBeansContext();
final ConstructorInjectionBean<Object> beanDefinition = new
ConstructorInjectionBean<Object>(webBeansContext, beanClass).complete();
@@ -131,10 +131,17 @@ public class WebContext {
return beanInstance;
}
+ private WebBeansContext getWebBeansContext() {
+ if (webbeansContext == null) {
+ return getAppContext().getWebBeansContext();
+ }
+ return webbeansContext;
+ }
+
public Object inject(Object o) throws OpenEJBException {
try {
- final WebBeansContext webBeansContext =
getAppContext().getWebBeansContext();
+ final WebBeansContext webBeansContext = getWebBeansContext();
final ConstructorInjectionBean<Object> beanDefinition = new
ConstructorInjectionBean(webBeansContext, o.getClass()).complete();