You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomee.apache.org by David Blevins <da...@visi.com> on 2009/04/22 23:22:51 UTC

POJO Injection (Re: EJB 3.1 PFD2 is up for download)

On Mar 12, 2009, at 12:45 PM, David Blevins wrote:

> On Mar 12, 2009, at 5:25 AM, Karan Malhi wrote:
>
>>>
>>> Regardless, that won't stop us from implementing it :)  I suspect  
>>> if we do
>>> it and other vendors follow suit, it'll pretty much have to make  
>>> it into the
>>> spec next time around.
>>
>> Nice! .  Is this on the top of your priority list? I have an area  
>> in struts2
>> integration which could use this funcionality.
>
> Not the top, but very high.  Top priority in my mind right now is  
> getting our JNDI awkwardness straightened out.
>
> The easiest way to implement this would be to scan at deployment  
> like everything else perhaps by adding an  
> "@org.apache.openejb.annotations.Injectable" annotation or  
> something.  Would be great if we didn't have to do even that, but  
> certainly would be the easiest first step.  Could probably get that  
> in in a day or two and wouldn't at all limit our ability to do it  
> without the annotation later.  With the annotation, the user would  
> get the same deploy time checks as other EE components and without  
> it'd be all runtime checks.  So both seem like a pretty ideal  
> solution.

Going to see if I can't take a swing at this feature as described  
here.  Likely will involve adding a new container/openejb-annotation/  
module to hold the annotation so people have a jar they can use free  
of any other dependencies and just holds "API" things.  If we end up  
supporting more annotations, we'll have a place to put them.

-David


Re: POJO Injection (Re: EJB 3.1 PFD2 is up for download)

Posted by David Blevins <da...@visi.com>.
On Apr 22, 2009, at 2:22 PM, David Blevins wrote:

> On Mar 12, 2009, at 12:45 PM, David Blevins wrote:
>
>> On Mar 12, 2009, at 5:25 AM, Karan Malhi wrote:
>>
>>>>
>>>> Regardless, that won't stop us from implementing it :)  I suspect  
>>>> if we do
>>>> it and other vendors follow suit, it'll pretty much have to make  
>>>> it into the
>>>> spec next time around.
>>>
>>> Nice! .  Is this on the top of your priority list? I have an area  
>>> in struts2
>>> integration which could use this funcionality.
>>
>> Not the top, but very high.  Top priority in my mind right now is  
>> getting our JNDI awkwardness straightened out.
>>
>> The easiest way to implement this would be to scan at deployment  
>> like everything else perhaps by adding an  
>> "@org.apache.openejb.annotations.Injectable" annotation or  
>> something.  Would be great if we didn't have to do even that, but  
>> certainly would be the easiest first step.  Could probably get that  
>> in in a day or two and wouldn't at all limit our ability to do it  
>> without the annotation later.  With the annotation, the user would  
>> get the same deploy time checks as other EE components and without  
>> it'd be all runtime checks.  So both seem like a pretty ideal  
>> solution.
>
> Going to see if I can't take a swing at this feature as described  
> here.  Likely will involve adding a new container/openejb- 
> annotation/ module to hold the annotation so people have a jar they  
> can use free of any other dependencies and just holds "API" things.   
> If we end up supporting more annotations, we'll have a place to put  
> them.

Took a swing at this a couple weeks ago but had to put it down to  
focus on other things.  Took today to polish off what I had and get it  
in as we need to start the release process -- would be really great to  
have a release out by JavaOne.

Had to scale back what I was imagining to get it in.  So currently  
what we have is essentially a way for plain java clients (i.e. non- 
J2EE application clients) to get some injection action.  And more  
specifically it's limited to local clients which are most likely test  
cases or other embedded usage.  Would be great to expand this to  
remote clients accessing the server over a network, but that will have  
to wait.  Would also be great to allow any class to be injectable even  
if it isn't a "client" in the strictest sense, but that will also have  
to wait.

Anyway, check out the example:

   http://svn.apache.org/repos/asf/openejb/trunk/openejb3/examples/testcase-injection/

-David