You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by rm...@apache.org on 2012/03/12 16:05:59 UTC
svn commit: r1299702 -
/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/ivm/EjbHomeProxyHandler.java
Author: rmannibucau
Date: Mon Mar 12 15:05:59 2012
New Revision: 1299702
URL: http://svn.apache.org/viewvc?rev=1299702&view=rev
Log:
isn't BeanContext.Removable only for stateful beans?
Modified:
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/ivm/EjbHomeProxyHandler.java
Modified: openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/ivm/EjbHomeProxyHandler.java
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/ivm/EjbHomeProxyHandler.java?rev=1299702&r1=1299701&r2=1299702&view=diff
==============================================================================
--- openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/ivm/EjbHomeProxyHandler.java (original)
+++ openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/ivm/EjbHomeProxyHandler.java Mon Mar 12 15:05:59 2012
@@ -27,6 +27,7 @@ import org.apache.openejb.core.managed.M
import org.apache.openejb.core.singleton.SingletonEjbHomeHandler;
import org.apache.openejb.core.stateful.StatefulEjbHomeHandler;
import org.apache.openejb.core.stateless.StatelessEjbHomeHandler;
+import org.apache.openejb.jee.SessionType;
import org.apache.openejb.spi.ApplicationServer;
import org.apache.openejb.util.LogCategory;
import org.apache.openejb.util.Logger;
@@ -129,7 +130,7 @@ public abstract class EjbHomeProxyHandle
InterfaceType objectInterfaceType = this.interfaceType.getCounterpart();
- EjbObjectProxyHandler handler = newEjbObjectHandler(getBeanContext(), primaryKey, objectInterfaceType, this.getInterfaces(), mainInterface);
+ EjbObjectProxyHandler handler = newEjbObjectHandler(getBeanContext(), primaryKey, objectInterfaceType, getInterfaces(), mainInterface);
// TODO Is it correct for ManagedBean injection via managed bean class?
if ((InterfaceType.LOCALBEAN.equals(objectInterfaceType) || getBeanContext().getComponentType().equals(BeanType.MANAGED))
@@ -139,7 +140,9 @@ public abstract class EjbHomeProxyHandle
List<Class> proxyInterfaces = new ArrayList<Class>(handler.getInterfaces().size() + 1);
proxyInterfaces.addAll(handler.getInterfaces());
proxyInterfaces.add(IntraVmProxy.class);
- proxyInterfaces.add(BeanContext.Removable.class);
+ if (SessionType.STATEFUL.equals(getBeanContext().getComponentType())) {
+ proxyInterfaces.add(BeanContext.Removable.class);
+ }
return ProxyManager.newProxyInstance(proxyInterfaces.toArray(new Class[]{}), handler);
}
Re: svn commit: r1299702 - /openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/ivm/EjbHomeProxyHandler.java
Posted by Romain Manni-Bucau <rm...@gmail.com>.
Ok so the fact to add it for all beans was really a mistake?
- Romain
2012/3/12 David Blevins <da...@gmail.com>
> It's the interface that allows bean instances to be removed when CDI
> scopes end. @ManagedBean and @Stateful can have their lifecycle managed in
> such a way.
>
> -David
>
> On Mar 12, 2012, at 12:04 PM, Romain Manni-Bucau wrote:
>
> > the goal was mainly to be able to @Inject EJBs
> >
> > can you give some points regarding this interface please?
> >
> > - Romain
> >
> >
> > 2012/3/12 David Blevins <da...@gmail.com>
> >
> >>
> >> On Mar 12, 2012, at 10:05 AM, rmannibucau@apache.org wrote:
> >>
> >>> Author: rmannibucau
> >>> Date: Mon Mar 12 15:05:59 2012
> >>> New Revision: 1299702
> >>>
> >>> URL: http://svn.apache.org/viewvc?rev=1299702&view=rev
> >>> Log:
> >>> isn't BeanContext.Removable only for stateful beans?
> >>
> >> Works for @ManagedBean as well in our impl.
> >>
> >>
> >> -David
> >>
> >>> Modified:
> >>>
> >>
> openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/ivm/EjbHomeProxyHandler.java
> >>>
> >>> Modified:
> >>
> openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/ivm/EjbHomeProxyHandler.java
> >>> URL:
> >>
> http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/ivm/EjbHomeProxyHandler.java?rev=1299702&r1=1299701&r2=1299702&view=diff
> >>>
> >>
> ==============================================================================
> >>> ---
> >>
> openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/ivm/EjbHomeProxyHandler.java
> >> (original)
> >>> +++
> >>
> openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/ivm/EjbHomeProxyHandler.java
> >> Mon Mar 12 15:05:59 2012
> >>> @@ -27,6 +27,7 @@ import org.apache.openejb.core.managed.M
> >>> import org.apache.openejb.core.singleton.SingletonEjbHomeHandler;
> >>> import org.apache.openejb.core.stateful.StatefulEjbHomeHandler;
> >>> import org.apache.openejb.core.stateless.StatelessEjbHomeHandler;
> >>> +import org.apache.openejb.jee.SessionType;
> >>> import org.apache.openejb.spi.ApplicationServer;
> >>> import org.apache.openejb.util.LogCategory;
> >>> import org.apache.openejb.util.Logger;
> >>> @@ -129,7 +130,7 @@ public abstract class EjbHomeProxyHandle
> >>>
> >>> InterfaceType objectInterfaceType =
> >> this.interfaceType.getCounterpart();
> >>>
> >>> - EjbObjectProxyHandler handler =
> >> newEjbObjectHandler(getBeanContext(), primaryKey, objectInterfaceType,
> >> this.getInterfaces(), mainInterface);
> >>> + EjbObjectProxyHandler handler =
> >> newEjbObjectHandler(getBeanContext(), primaryKey, objectInterfaceType,
> >> getInterfaces(), mainInterface);
> >>>
> >>> // TODO Is it correct for ManagedBean injection via managed
> >> bean class?
> >>> if ((InterfaceType.LOCALBEAN.equals(objectInterfaceType) ||
> >> getBeanContext().getComponentType().equals(BeanType.MANAGED))
> >>> @@ -139,7 +140,9 @@ public abstract class EjbHomeProxyHandle
> >>> List<Class> proxyInterfaces = new
> >> ArrayList<Class>(handler.getInterfaces().size() + 1);
> >>> proxyInterfaces.addAll(handler.getInterfaces());
> >>> proxyInterfaces.add(IntraVmProxy.class);
> >>> - proxyInterfaces.add(BeanContext.Removable.class);
> >>> + if
> >> (SessionType.STATEFUL.equals(getBeanContext().getComponentType())) {
> >>> + proxyInterfaces.add(BeanContext.Removable.class);
> >>> + }
> >>> return
> >> ProxyManager.newProxyInstance(proxyInterfaces.toArray(new Class[]{}),
> >> handler);
> >>> }
> >>>
> >>>
> >>>
> >>>
> >>
> >>
>
>
Re: svn commit: r1299702 - /openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/ivm/EjbHomeProxyHandler.java
Posted by David Blevins <da...@gmail.com>.
It's the interface that allows bean instances to be removed when CDI scopes end. @ManagedBean and @Stateful can have their lifecycle managed in such a way.
-David
On Mar 12, 2012, at 12:04 PM, Romain Manni-Bucau wrote:
> the goal was mainly to be able to @Inject EJBs
>
> can you give some points regarding this interface please?
>
> - Romain
>
>
> 2012/3/12 David Blevins <da...@gmail.com>
>
>>
>> On Mar 12, 2012, at 10:05 AM, rmannibucau@apache.org wrote:
>>
>>> Author: rmannibucau
>>> Date: Mon Mar 12 15:05:59 2012
>>> New Revision: 1299702
>>>
>>> URL: http://svn.apache.org/viewvc?rev=1299702&view=rev
>>> Log:
>>> isn't BeanContext.Removable only for stateful beans?
>>
>> Works for @ManagedBean as well in our impl.
>>
>>
>> -David
>>
>>> Modified:
>>>
>> openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/ivm/EjbHomeProxyHandler.java
>>>
>>> Modified:
>> openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/ivm/EjbHomeProxyHandler.java
>>> URL:
>> http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/ivm/EjbHomeProxyHandler.java?rev=1299702&r1=1299701&r2=1299702&view=diff
>>>
>> ==============================================================================
>>> ---
>> openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/ivm/EjbHomeProxyHandler.java
>> (original)
>>> +++
>> openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/ivm/EjbHomeProxyHandler.java
>> Mon Mar 12 15:05:59 2012
>>> @@ -27,6 +27,7 @@ import org.apache.openejb.core.managed.M
>>> import org.apache.openejb.core.singleton.SingletonEjbHomeHandler;
>>> import org.apache.openejb.core.stateful.StatefulEjbHomeHandler;
>>> import org.apache.openejb.core.stateless.StatelessEjbHomeHandler;
>>> +import org.apache.openejb.jee.SessionType;
>>> import org.apache.openejb.spi.ApplicationServer;
>>> import org.apache.openejb.util.LogCategory;
>>> import org.apache.openejb.util.Logger;
>>> @@ -129,7 +130,7 @@ public abstract class EjbHomeProxyHandle
>>>
>>> InterfaceType objectInterfaceType =
>> this.interfaceType.getCounterpart();
>>>
>>> - EjbObjectProxyHandler handler =
>> newEjbObjectHandler(getBeanContext(), primaryKey, objectInterfaceType,
>> this.getInterfaces(), mainInterface);
>>> + EjbObjectProxyHandler handler =
>> newEjbObjectHandler(getBeanContext(), primaryKey, objectInterfaceType,
>> getInterfaces(), mainInterface);
>>>
>>> // TODO Is it correct for ManagedBean injection via managed
>> bean class?
>>> if ((InterfaceType.LOCALBEAN.equals(objectInterfaceType) ||
>> getBeanContext().getComponentType().equals(BeanType.MANAGED))
>>> @@ -139,7 +140,9 @@ public abstract class EjbHomeProxyHandle
>>> List<Class> proxyInterfaces = new
>> ArrayList<Class>(handler.getInterfaces().size() + 1);
>>> proxyInterfaces.addAll(handler.getInterfaces());
>>> proxyInterfaces.add(IntraVmProxy.class);
>>> - proxyInterfaces.add(BeanContext.Removable.class);
>>> + if
>> (SessionType.STATEFUL.equals(getBeanContext().getComponentType())) {
>>> + proxyInterfaces.add(BeanContext.Removable.class);
>>> + }
>>> return
>> ProxyManager.newProxyInstance(proxyInterfaces.toArray(new Class[]{}),
>> handler);
>>> }
>>>
>>>
>>>
>>>
>>
>>
Re: svn commit: r1299702 - /openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/ivm/EjbHomeProxyHandler.java
Posted by Romain Manni-Bucau <rm...@gmail.com>.
the goal was mainly to be able to @Inject EJBs
can you give some points regarding this interface please?
- Romain
2012/3/12 David Blevins <da...@gmail.com>
>
> On Mar 12, 2012, at 10:05 AM, rmannibucau@apache.org wrote:
>
> > Author: rmannibucau
> > Date: Mon Mar 12 15:05:59 2012
> > New Revision: 1299702
> >
> > URL: http://svn.apache.org/viewvc?rev=1299702&view=rev
> > Log:
> > isn't BeanContext.Removable only for stateful beans?
>
> Works for @ManagedBean as well in our impl.
>
>
> -David
>
> > Modified:
> >
> openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/ivm/EjbHomeProxyHandler.java
> >
> > Modified:
> openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/ivm/EjbHomeProxyHandler.java
> > URL:
> http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/ivm/EjbHomeProxyHandler.java?rev=1299702&r1=1299701&r2=1299702&view=diff
> >
> ==============================================================================
> > ---
> openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/ivm/EjbHomeProxyHandler.java
> (original)
> > +++
> openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/ivm/EjbHomeProxyHandler.java
> Mon Mar 12 15:05:59 2012
> > @@ -27,6 +27,7 @@ import org.apache.openejb.core.managed.M
> > import org.apache.openejb.core.singleton.SingletonEjbHomeHandler;
> > import org.apache.openejb.core.stateful.StatefulEjbHomeHandler;
> > import org.apache.openejb.core.stateless.StatelessEjbHomeHandler;
> > +import org.apache.openejb.jee.SessionType;
> > import org.apache.openejb.spi.ApplicationServer;
> > import org.apache.openejb.util.LogCategory;
> > import org.apache.openejb.util.Logger;
> > @@ -129,7 +130,7 @@ public abstract class EjbHomeProxyHandle
> >
> > InterfaceType objectInterfaceType =
> this.interfaceType.getCounterpart();
> >
> > - EjbObjectProxyHandler handler =
> newEjbObjectHandler(getBeanContext(), primaryKey, objectInterfaceType,
> this.getInterfaces(), mainInterface);
> > + EjbObjectProxyHandler handler =
> newEjbObjectHandler(getBeanContext(), primaryKey, objectInterfaceType,
> getInterfaces(), mainInterface);
> >
> > // TODO Is it correct for ManagedBean injection via managed
> bean class?
> > if ((InterfaceType.LOCALBEAN.equals(objectInterfaceType) ||
> getBeanContext().getComponentType().equals(BeanType.MANAGED))
> > @@ -139,7 +140,9 @@ public abstract class EjbHomeProxyHandle
> > List<Class> proxyInterfaces = new
> ArrayList<Class>(handler.getInterfaces().size() + 1);
> > proxyInterfaces.addAll(handler.getInterfaces());
> > proxyInterfaces.add(IntraVmProxy.class);
> > - proxyInterfaces.add(BeanContext.Removable.class);
> > + if
> (SessionType.STATEFUL.equals(getBeanContext().getComponentType())) {
> > + proxyInterfaces.add(BeanContext.Removable.class);
> > + }
> > return
> ProxyManager.newProxyInstance(proxyInterfaces.toArray(new Class[]{}),
> handler);
> > }
> >
> >
> >
> >
>
>
Re: svn commit: r1299702 - /openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/ivm/EjbHomeProxyHandler.java
Posted by David Blevins <da...@gmail.com>.
On Mar 12, 2012, at 10:05 AM, rmannibucau@apache.org wrote:
> Author: rmannibucau
> Date: Mon Mar 12 15:05:59 2012
> New Revision: 1299702
>
> URL: http://svn.apache.org/viewvc?rev=1299702&view=rev
> Log:
> isn't BeanContext.Removable only for stateful beans?
Works for @ManagedBean as well in our impl.
-David
> Modified:
> openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/ivm/EjbHomeProxyHandler.java
>
> Modified: openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/ivm/EjbHomeProxyHandler.java
> URL: http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/ivm/EjbHomeProxyHandler.java?rev=1299702&r1=1299701&r2=1299702&view=diff
> ==============================================================================
> --- openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/ivm/EjbHomeProxyHandler.java (original)
> +++ openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/core/ivm/EjbHomeProxyHandler.java Mon Mar 12 15:05:59 2012
> @@ -27,6 +27,7 @@ import org.apache.openejb.core.managed.M
> import org.apache.openejb.core.singleton.SingletonEjbHomeHandler;
> import org.apache.openejb.core.stateful.StatefulEjbHomeHandler;
> import org.apache.openejb.core.stateless.StatelessEjbHomeHandler;
> +import org.apache.openejb.jee.SessionType;
> import org.apache.openejb.spi.ApplicationServer;
> import org.apache.openejb.util.LogCategory;
> import org.apache.openejb.util.Logger;
> @@ -129,7 +130,7 @@ public abstract class EjbHomeProxyHandle
>
> InterfaceType objectInterfaceType = this.interfaceType.getCounterpart();
>
> - EjbObjectProxyHandler handler = newEjbObjectHandler(getBeanContext(), primaryKey, objectInterfaceType, this.getInterfaces(), mainInterface);
> + EjbObjectProxyHandler handler = newEjbObjectHandler(getBeanContext(), primaryKey, objectInterfaceType, getInterfaces(), mainInterface);
>
> // TODO Is it correct for ManagedBean injection via managed bean class?
> if ((InterfaceType.LOCALBEAN.equals(objectInterfaceType) || getBeanContext().getComponentType().equals(BeanType.MANAGED))
> @@ -139,7 +140,9 @@ public abstract class EjbHomeProxyHandle
> List<Class> proxyInterfaces = new ArrayList<Class>(handler.getInterfaces().size() + 1);
> proxyInterfaces.addAll(handler.getInterfaces());
> proxyInterfaces.add(IntraVmProxy.class);
> - proxyInterfaces.add(BeanContext.Removable.class);
> + if (SessionType.STATEFUL.equals(getBeanContext().getComponentType())) {
> + proxyInterfaces.add(BeanContext.Removable.class);
> + }
> return ProxyManager.newProxyInstance(proxyInterfaces.toArray(new Class[]{}), handler);
> }
>
>
>
>