You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomee.apache.org by Manu George <ma...@gmail.com> on 2006/11/20 10:48:54 UTC
Regarding testing annotated beans
Hi David,
Have you created the beans that we are going to test
annotations? If not shall I go ahead and create the beans as extending
from the current test beans. I plan to create the session beans
required for testing the annotations you have implemented.
Thanks
Manu
Re: Regarding testing annotated beans
Posted by Manu George <ma...@gmail.com>.
Hi David,
The issue got resolved. It was a compilation problem, the
class was having errors but still eclipse created a class file which
was being examined by ASM for annotations which were not found.
Thanks
Manu
On 11/21/06, David Blevins <da...@visi.com> wrote:
>
> On Nov 20, 2006, at 11:37 AM, Manu George wrote:
>
> > Hi David,
> > I just created a stateless session bean
> >
> > package org.apache.openejb.test.stateless;
> >
> > @Stateless
> > @Local ({BasicStatelessBusinessLocal.class})
> > @Remote ({BasicStatelessBusinessRemote.class})
> > public class BasicStatelessAnnotatedBean extends BasicStatelessBean {
> >
> >
> >
> > }
> >
> > This doesn't seem to get deployed. I may be missing something but from
> > the debugging I did there seems to be problems in the ClassFinder of
> > xbean while using ASM. Please have a look.
>
> Hmm. Not going to be able to dig into this just yet. If you add one
> of these to the ejb-jar.xml, do the rest of the annonations kick in?
>
> <session>
> <ejb-name>BasicStatelessBean</ejb-name>
> <ejb-
> class>org.apache.openejb.test.stateless.BasicStatelessBean</ejb-class>
> </session>
>
> -David
>
>
> > Thanks
> > Manu
> >
> >
> > On 11/20/06, David Blevins <da...@visi.com> wrote:
> >> On Nov 20, 2006, at 1:48 AM, Manu George wrote:
> >>
> >> > Hi David,
> >> > Have you created the beans that we are going to test
> >> > annotations? If not shall I go ahead and create the beans as
> >> extending
> >> > from the current test beans. I plan to create the session beans
> >> > required for testing the annotations you have implemented.
> >>
> >> Go for it!
> >>
> >> You can throw everything into an itests/openejb-itests-annotated-
> >> beans/ module.
> >>
> >> Note sure just yet how we'll wire it in to run with the other tests.
> >> If you have any ideas, I'm all ears.
> >>
> >> -David
> >>
> >>
> >>
> >>
> >
>
>
Re: Regarding testing annotated beans
Posted by David Blevins <da...@visi.com>.
On Nov 20, 2006, at 11:37 AM, Manu George wrote:
> Hi David,
> I just created a stateless session bean
>
> package org.apache.openejb.test.stateless;
>
> @Stateless
> @Local ({BasicStatelessBusinessLocal.class})
> @Remote ({BasicStatelessBusinessRemote.class})
> public class BasicStatelessAnnotatedBean extends BasicStatelessBean {
>
>
>
> }
>
> This doesn't seem to get deployed. I may be missing something but from
> the debugging I did there seems to be problems in the ClassFinder of
> xbean while using ASM. Please have a look.
Hmm. Not going to be able to dig into this just yet. If you add one
of these to the ejb-jar.xml, do the rest of the annonations kick in?
<session>
<ejb-name>BasicStatelessBean</ejb-name>
<ejb-
class>org.apache.openejb.test.stateless.BasicStatelessBean</ejb-class>
</session>
-David
> Thanks
> Manu
>
>
> On 11/20/06, David Blevins <da...@visi.com> wrote:
>> On Nov 20, 2006, at 1:48 AM, Manu George wrote:
>>
>> > Hi David,
>> > Have you created the beans that we are going to test
>> > annotations? If not shall I go ahead and create the beans as
>> extending
>> > from the current test beans. I plan to create the session beans
>> > required for testing the annotations you have implemented.
>>
>> Go for it!
>>
>> You can throw everything into an itests/openejb-itests-annotated-
>> beans/ module.
>>
>> Note sure just yet how we'll wire it in to run with the other tests.
>> If you have any ideas, I'm all ears.
>>
>> -David
>>
>>
>>
>>
>
Re: Regarding testing annotated beans
Posted by Manu George <ma...@gmail.com>.
Hi David,
I just created a stateless session bean
package org.apache.openejb.test.stateless;
@Stateless
@Local ({BasicStatelessBusinessLocal.class})
@Remote ({BasicStatelessBusinessRemote.class})
public class BasicStatelessAnnotatedBean extends BasicStatelessBean {
}
This doesn't seem to get deployed. I may be missing something but from
the debugging I did there seems to be problems in the ClassFinder of
xbean while using ASM. Please have a look.
Thanks
Manu
On 11/20/06, David Blevins <da...@visi.com> wrote:
> On Nov 20, 2006, at 1:48 AM, Manu George wrote:
>
> > Hi David,
> > Have you created the beans that we are going to test
> > annotations? If not shall I go ahead and create the beans as extending
> > from the current test beans. I plan to create the session beans
> > required for testing the annotations you have implemented.
>
> Go for it!
>
> You can throw everything into an itests/openejb-itests-annotated-
> beans/ module.
>
> Note sure just yet how we'll wire it in to run with the other tests.
> If you have any ideas, I'm all ears.
>
> -David
>
>
>
>
Re: Regarding testing annotated beans
Posted by Manu George <ma...@gmail.com>.
forgot to mention JIRA nos
1) OPENEJB-501
2) OPENEJB-505
3) OPENEJB-477
Regards
Manu
On 2/15/07, Manu George <ma...@gmail.com> wrote:
> ok I created the initial set. I have accidentaly duplicated the
> following issues. Can u please delete them from the subtasks
>
> iTest for Testing the javax.ejb.TransactionAttribute Annotation
> iTest for Testing the javax.interceptor.ExcludeClassInterceptors Annotation
> iTest for Testing the javax.annotation.PreDestroy Annotation
>
> Regards
> Manu
>
> On 2/15/07, David Blevins <da...@visi.com> wrote:
> > On Feb 13, 2007, at 4:26 PM, Manu George wrote:
> >
> > > Hi,
> > >
> > > Sorry for being absent for some time ;) some hectic schedules and
> > > travel kept me away.
> >
> > Sounds relaxing ;)
> >
> > > Regarding the testing of annotated beans I have come up with the
> > > following annotations that need tests(copied from from dave B's list).
> > > I believe it will be simpler to have a few new EJB's and tests for
> > > these instead of the approach I proposed previously which requires a
> > > lot of redundant EJB's to be created .
> >
> > Yea, starting to think the same myself.
> >
> > >
> > > I have listed 36 annotations. They will need 36 tests for testing them
> > > and 36 others for overrides with dd. I think this is the simplest way
> > > to go ahead. I am thinking that first I will create a few annotated
> > > EJB's in the existing itests to check out these scenarios. If this
> > > approach is ok I can start raising JIRA's and working on the tests.
> >
> > Go ahead! I think we've got a few covered already. Check out
> > AnnotatedFieldInjectionStatefulBean and
> > AnnotatedFieldInjectionStatelessBean
> >
> > JIRA away! Would be cool if you could duplicate the parent issue for
> > implementing annotations and have it automatically duplicate all the
> > child issues too. Then you could just update them to say "iTest:"
> > But I'd be surprised if JIRA worked like that.
> >
> > /me lives in a fantasy world
> >
> > -David
> >
> > >
> > > Regards
> > > Manu
> > >
> > >
> > >
> > > On 2/1/07, Manu George <ma...@gmail.com> wrote:
> > >> Ok got it resolved pls ignore my prev mail
> > >>
> > >> Regards
> > >> Manu
> > >>
> > >> On 1/31/07, Manu George <ma...@gmail.com> wrote:
> > >> > Hi,
> > >> > I did some experimentation on this approach and came up with
> > >> > the following problem.
> > >> > Currently when the iTests are run for an application in the
> > >> > openejb-core module, there is an application.xml which gets loaded
> > >> > which has the element
> > >> >
> > >> > <module>
> > >> > <ejb>openejb-itests-beans-3.0-incubating-SNAPSHOT.jar</ejb>
> > >> > </module>
> > >> >
> > >> > So when I try to run the annotated beans in the module
> > >> > openejb-itests-annotated-beans-3.0-incubating-SNAPSHOT.jar
> > >> > by hiding the openejb-itests-beans I get an error saying the module
> > >> > openejb-itests-beans-3.0-incubating-SNAPSHOT.jar cannot be loaded.
> > >> > Is there any way to work around this?
> > >> >
> > >> > Regards
> > >> > Manu
> > >> >
> > >> >
> > >> >
> > >> >
> > >> >
> > >> >
> > >> > On 1/24/07, Manu George <ma...@gmail.com> wrote:
> > >> > > Yes thats a good idea. I had forgotten about this :). Let me
> > >> look into
> > >> > > creating a separate test suite for this
> > >> > >
> > >> > > Regards
> > >> > > Manu
> > >> > >
> > >> > > On 1/24/07, David Blevins <da...@visi.com> wrote:
> > >> > > > Following up in this thread as I need to plug in some
> > >> annotation
> > >> > > > based test into the itests as we are having some issues in the
> > >> > > > Geronimo integration that are nearly impossible to get
> > >> working or
> > >> > > > ensure are working without actual annotations.
> > >> > > >
> > >> > > > We had discussed a separate test suite for annotated beans,
> > >> which is
> > >> > > > still a good idea. I plan to make a purely annotated
> > >> version of our
> > >> > > > jndi enc and field injection tests, I'll just put them in
> > >> new classes
> > >> > > > next to the other tests. We can move them out later if we
> > >> want to go
> > >> > > > ahead with the plan to test a completely ejb-jar.xml free
> > >> set of itests.
> > >> > > >
> > >> > > >
> > >> > > > -David
> > >> > > >
> > >> > > >
> > >> > > > On Nov 26, 2006, at 6:48 PM, David Blevins wrote:
> > >> > > >
> > >> > > > > Hi Manu,
> > >> > > > >
> > >> > > > > On Nov 23, 2006, at 2:04 AM, Manu George wrote:
> > >> > > > >
> > >> > > > >> Hi David/Mohammad,
> > >> > > > >>
> > >> > > > >> What I was planning was to add annotated beans for each
> > >> of the
> > >> > > > >> corressponding beans deployed using the deployment
> > >> descriptor. Then
> > >> > > > >> execute all the test cases existing for the dd deployed
> > >> beans for the
> > >> > > > >> annotated beans as well.
> > >> > > > >
> > >> > > > > Sounds great.
> > >> > > > >
> > >> > > > >> In addition to this we need to create new
> > >> > > > >> test cases for checking the overrides as well as the
> > >> defaults(i.e.
> > >> > > > >> beans with the very minimum annotations. The unpecified
> > >> config
> > >> > > > >> attributes should be substituted by defaults).
> > >> > > > >
> > >> > > > > Even with the override testing idea I posted before, we'll
> > >> still
> > >> > > > > want a few beans and tests, so this is still a good idea.
> > >> > > > >
> > >> > > > >> I was thinking that if we can deploy the annotated
> > >> ejbs with
> > >> > > > >> the same name as the dd based ones we can execute the
> > >> existing tests
> > >> > > > >> as well. We will have the beans and remote interfaces
> > >> extending from
> > >> > > > >> the existing ones as well.
> > >> > > > >
> > >> > > > > We don't have support for it yet, but we can use the
> > >> mappedName
> > >> > > > > attribute of the @Stateful, @Stateless, or @MessageDriven
> > >> > > > > annotations to specify the OpenEJB deploymentId. We'll
> > >> likely want
> > >> > > > > to start using the mappedName of some of the other
> > >> annotations as
> > >> > > > > well. And we'll definitely want to document how we've
> > >> allocated
> > >> > > > > the "mappedName" attributes of various annotations on the
> > >> website
> > >> > > > > nice and clearly as it's vendor-specific. Maybe a table
> > >> of some sort.
> > >> > > > >
> > >> > > > >> I plan to implement this by creating two new
> > >> TestSuites
> > >> > > > >> corressponding to iTest and RemoteiTest namely
> > >> AnnotatediTest and
> > >> > > > >> AnnotatedRemoteiTest. In iTest and RemoteiTest I will add
> > >> the
> > >> > > > >> following system property
> > >> > > > >> System.setProperty("openejb.deployments.classpath.exclude",
> > >> > > > >> ".*openejb-itests-annotated-beans.*");
> > >> > > > >> This will prevent openejb from loading the descriptors in
> > >> that
> > >> > > > >> directory and so the annotated beans.Similarly if I set
> > >> the property
> > >> > > > >> to .*openejb-itests-beans.* in AnnotatediTests suite then
> > >> the dd
> > >> > > > >> based
> > >> > > > >> beans won't be deployed. This will minimize the tests we
> > >> need to
> > >> > > > >> write
> > >> > > > >> for annotated beans.
> > >> > > > >
> > >> > > > > Exactly what that's for! Though I'm beginning to think we
> > >> should
> > >> > > > > add an "openejb.deployments.classpath.include" as well.
> > >> Is this
> > >> > > > > something someone want's to add?
> > >> > > > >
> > >> > > > >> One issue I am not sure of here is even though we
> > >> > > > >> will have annotated business interfaces in the jar
> > >> deployed in server
> > >> > > > >> the existing tests will use the parent interfaces only so
> > >> we may need
> > >> > > > >> to create some tests with annotated interfaces used at
> > >> client side.
> > >> > > > >
> > >> > > > > I'm not sure out that will play out either. We should be
> > >> able to
> > >> > > > > get by, but there may be places we want tests dedicated to
> > >> the
> > >> > > > > annotated beans/interfaces.
> > >> > > > >
> > >> > > > >> Now I may have been missing something when i came
> > >> up with
> > >> > > > >> this approach and so it may not work. So I am looking for
> > >> your
> > >> > > > >> comments poiniting out the issues with this approach. Better
> > >> > > > >> ideas,improvements and comments are welcome from anyone.
> > >> > > > >
> > >> > > > > You nailed it pretty well.
> > >> > > > >
> > >> > > > > One thing in general is that the field injection, setter
> > >> injection,
> > >> > > > > EJBContext.lookup (no JIRA for this yet), and JNDI ENC
> > >> lookup tests
> > >> > > > > are all going to doing pretty much the exact same things.
> > >> It'd be
> > >> > > > > best if they were all as similar as possible. We have a
> > >> test for
> > >> > > > > the JNDI ENC lookups on the types available in EJB 1.1
> > >> (needs to be
> > >> > > > > updated for EJB3 also).
> > >> > > > >
> > >> > > > > http://svn.apache.org/repos/asf/incubator/openejb/trunk/
> > >> openejb3/
> > >> > > > > itests/openejb-itests-beans/src/main/java/org/apache/
> > >> openejb/test/
> > >> > > > > stateless/EncStatelessBean.java
> > >> > > > > http://svn.apache.org/repos/asf/incubator/openejb/trunk/
> > >> openejb3/
> > >> > > > > itests/openejb-itests-client/src/main/java/org/apache/
> > >> openejb/test/
> > >> > > > > stateless/StatelessJndiEncTests.java
> > >> > > > >
> > >> > > > > This may or may not be useful as a launching pad for the new
> > >> > > > > tests. We don't have to follow that style and we very
> > >> well may
> > >> > > > > want to rewrite that test to follow the style of the new
> > >> tests if
> > >> > > > > it turns out to be different.
> > >> > > > >
> > >> > > > > -David
> > >> > > > >
> > >> > > > >> Thanks
> > >> > > > >> Manu
> > >> > > > >>
> > >> > > > >> On 11/20/06, David Blevins <da...@visi.com> wrote:
> > >> > > > >>> On Nov 20, 2006, at 1:48 AM, Manu George wrote:
> > >> > > > >>>
> > >> > > > >>> > Hi David,
> > >> > > > >>> > Have you created the beans that we are
> > >> going to test
> > >> > > > >>> > annotations? If not shall I go ahead and create the
> > >> beans as
> > >> > > > >>> extending
> > >> > > > >>> > from the current test beans. I plan to create the
> > >> session beans
> > >> > > > >>> > required for testing the annotations you have
> > >> implemented.
> > >> > > > >>>
> > >> > > > >>> Go for it!
> > >> > > > >>>
> > >> > > > >>> You can throw everything into an itests/openejb-itests-
> > >> annotated-
> > >> > > > >>> beans/ module.
> > >> > > > >>>
> > >> > > > >>> Note sure just yet how we'll wire it in to run with the
> > >> other tests.
> > >> > > > >>> If you have any ideas, I'm all ears.
> > >> > > > >>>
> > >> > > > >>> -David
> > >> > > > >>>
> > >> > > > >>>
> > >> > > > >>>
> > >> > > > >>>
> > >> > > > >>
> > >> > > > >
> > >> > > >
> > >> > > >
> > >> > >
> > >> >
> > >>
> > >
> >
> >
>
Re: Regarding testing annotated beans
Posted by Manu George <ma...@gmail.com>.
ok I created the initial set. I have accidentaly duplicated the
following issues. Can u please delete them from the subtasks
iTest for Testing the javax.ejb.TransactionAttribute Annotation
iTest for Testing the javax.interceptor.ExcludeClassInterceptors Annotation
iTest for Testing the javax.annotation.PreDestroy Annotation
Regards
Manu
On 2/15/07, David Blevins <da...@visi.com> wrote:
> On Feb 13, 2007, at 4:26 PM, Manu George wrote:
>
> > Hi,
> >
> > Sorry for being absent for some time ;) some hectic schedules and
> > travel kept me away.
>
> Sounds relaxing ;)
>
> > Regarding the testing of annotated beans I have come up with the
> > following annotations that need tests(copied from from dave B's list).
> > I believe it will be simpler to have a few new EJB's and tests for
> > these instead of the approach I proposed previously which requires a
> > lot of redundant EJB's to be created .
>
> Yea, starting to think the same myself.
>
> >
> > I have listed 36 annotations. They will need 36 tests for testing them
> > and 36 others for overrides with dd. I think this is the simplest way
> > to go ahead. I am thinking that first I will create a few annotated
> > EJB's in the existing itests to check out these scenarios. If this
> > approach is ok I can start raising JIRA's and working on the tests.
>
> Go ahead! I think we've got a few covered already. Check out
> AnnotatedFieldInjectionStatefulBean and
> AnnotatedFieldInjectionStatelessBean
>
> JIRA away! Would be cool if you could duplicate the parent issue for
> implementing annotations and have it automatically duplicate all the
> child issues too. Then you could just update them to say "iTest:"
> But I'd be surprised if JIRA worked like that.
>
> /me lives in a fantasy world
>
> -David
>
> >
> > Regards
> > Manu
> >
> >
> >
> > On 2/1/07, Manu George <ma...@gmail.com> wrote:
> >> Ok got it resolved pls ignore my prev mail
> >>
> >> Regards
> >> Manu
> >>
> >> On 1/31/07, Manu George <ma...@gmail.com> wrote:
> >> > Hi,
> >> > I did some experimentation on this approach and came up with
> >> > the following problem.
> >> > Currently when the iTests are run for an application in the
> >> > openejb-core module, there is an application.xml which gets loaded
> >> > which has the element
> >> >
> >> > <module>
> >> > <ejb>openejb-itests-beans-3.0-incubating-SNAPSHOT.jar</ejb>
> >> > </module>
> >> >
> >> > So when I try to run the annotated beans in the module
> >> > openejb-itests-annotated-beans-3.0-incubating-SNAPSHOT.jar
> >> > by hiding the openejb-itests-beans I get an error saying the module
> >> > openejb-itests-beans-3.0-incubating-SNAPSHOT.jar cannot be loaded.
> >> > Is there any way to work around this?
> >> >
> >> > Regards
> >> > Manu
> >> >
> >> >
> >> >
> >> >
> >> >
> >> >
> >> > On 1/24/07, Manu George <ma...@gmail.com> wrote:
> >> > > Yes thats a good idea. I had forgotten about this :). Let me
> >> look into
> >> > > creating a separate test suite for this
> >> > >
> >> > > Regards
> >> > > Manu
> >> > >
> >> > > On 1/24/07, David Blevins <da...@visi.com> wrote:
> >> > > > Following up in this thread as I need to plug in some
> >> annotation
> >> > > > based test into the itests as we are having some issues in the
> >> > > > Geronimo integration that are nearly impossible to get
> >> working or
> >> > > > ensure are working without actual annotations.
> >> > > >
> >> > > > We had discussed a separate test suite for annotated beans,
> >> which is
> >> > > > still a good idea. I plan to make a purely annotated
> >> version of our
> >> > > > jndi enc and field injection tests, I'll just put them in
> >> new classes
> >> > > > next to the other tests. We can move them out later if we
> >> want to go
> >> > > > ahead with the plan to test a completely ejb-jar.xml free
> >> set of itests.
> >> > > >
> >> > > >
> >> > > > -David
> >> > > >
> >> > > >
> >> > > > On Nov 26, 2006, at 6:48 PM, David Blevins wrote:
> >> > > >
> >> > > > > Hi Manu,
> >> > > > >
> >> > > > > On Nov 23, 2006, at 2:04 AM, Manu George wrote:
> >> > > > >
> >> > > > >> Hi David/Mohammad,
> >> > > > >>
> >> > > > >> What I was planning was to add annotated beans for each
> >> of the
> >> > > > >> corressponding beans deployed using the deployment
> >> descriptor. Then
> >> > > > >> execute all the test cases existing for the dd deployed
> >> beans for the
> >> > > > >> annotated beans as well.
> >> > > > >
> >> > > > > Sounds great.
> >> > > > >
> >> > > > >> In addition to this we need to create new
> >> > > > >> test cases for checking the overrides as well as the
> >> defaults(i.e.
> >> > > > >> beans with the very minimum annotations. The unpecified
> >> config
> >> > > > >> attributes should be substituted by defaults).
> >> > > > >
> >> > > > > Even with the override testing idea I posted before, we'll
> >> still
> >> > > > > want a few beans and tests, so this is still a good idea.
> >> > > > >
> >> > > > >> I was thinking that if we can deploy the annotated
> >> ejbs with
> >> > > > >> the same name as the dd based ones we can execute the
> >> existing tests
> >> > > > >> as well. We will have the beans and remote interfaces
> >> extending from
> >> > > > >> the existing ones as well.
> >> > > > >
> >> > > > > We don't have support for it yet, but we can use the
> >> mappedName
> >> > > > > attribute of the @Stateful, @Stateless, or @MessageDriven
> >> > > > > annotations to specify the OpenEJB deploymentId. We'll
> >> likely want
> >> > > > > to start using the mappedName of some of the other
> >> annotations as
> >> > > > > well. And we'll definitely want to document how we've
> >> allocated
> >> > > > > the "mappedName" attributes of various annotations on the
> >> website
> >> > > > > nice and clearly as it's vendor-specific. Maybe a table
> >> of some sort.
> >> > > > >
> >> > > > >> I plan to implement this by creating two new
> >> TestSuites
> >> > > > >> corressponding to iTest and RemoteiTest namely
> >> AnnotatediTest and
> >> > > > >> AnnotatedRemoteiTest. In iTest and RemoteiTest I will add
> >> the
> >> > > > >> following system property
> >> > > > >> System.setProperty("openejb.deployments.classpath.exclude",
> >> > > > >> ".*openejb-itests-annotated-beans.*");
> >> > > > >> This will prevent openejb from loading the descriptors in
> >> that
> >> > > > >> directory and so the annotated beans.Similarly if I set
> >> the property
> >> > > > >> to .*openejb-itests-beans.* in AnnotatediTests suite then
> >> the dd
> >> > > > >> based
> >> > > > >> beans won't be deployed. This will minimize the tests we
> >> need to
> >> > > > >> write
> >> > > > >> for annotated beans.
> >> > > > >
> >> > > > > Exactly what that's for! Though I'm beginning to think we
> >> should
> >> > > > > add an "openejb.deployments.classpath.include" as well.
> >> Is this
> >> > > > > something someone want's to add?
> >> > > > >
> >> > > > >> One issue I am not sure of here is even though we
> >> > > > >> will have annotated business interfaces in the jar
> >> deployed in server
> >> > > > >> the existing tests will use the parent interfaces only so
> >> we may need
> >> > > > >> to create some tests with annotated interfaces used at
> >> client side.
> >> > > > >
> >> > > > > I'm not sure out that will play out either. We should be
> >> able to
> >> > > > > get by, but there may be places we want tests dedicated to
> >> the
> >> > > > > annotated beans/interfaces.
> >> > > > >
> >> > > > >> Now I may have been missing something when i came
> >> up with
> >> > > > >> this approach and so it may not work. So I am looking for
> >> your
> >> > > > >> comments poiniting out the issues with this approach. Better
> >> > > > >> ideas,improvements and comments are welcome from anyone.
> >> > > > >
> >> > > > > You nailed it pretty well.
> >> > > > >
> >> > > > > One thing in general is that the field injection, setter
> >> injection,
> >> > > > > EJBContext.lookup (no JIRA for this yet), and JNDI ENC
> >> lookup tests
> >> > > > > are all going to doing pretty much the exact same things.
> >> It'd be
> >> > > > > best if they were all as similar as possible. We have a
> >> test for
> >> > > > > the JNDI ENC lookups on the types available in EJB 1.1
> >> (needs to be
> >> > > > > updated for EJB3 also).
> >> > > > >
> >> > > > > http://svn.apache.org/repos/asf/incubator/openejb/trunk/
> >> openejb3/
> >> > > > > itests/openejb-itests-beans/src/main/java/org/apache/
> >> openejb/test/
> >> > > > > stateless/EncStatelessBean.java
> >> > > > > http://svn.apache.org/repos/asf/incubator/openejb/trunk/
> >> openejb3/
> >> > > > > itests/openejb-itests-client/src/main/java/org/apache/
> >> openejb/test/
> >> > > > > stateless/StatelessJndiEncTests.java
> >> > > > >
> >> > > > > This may or may not be useful as a launching pad for the new
> >> > > > > tests. We don't have to follow that style and we very
> >> well may
> >> > > > > want to rewrite that test to follow the style of the new
> >> tests if
> >> > > > > it turns out to be different.
> >> > > > >
> >> > > > > -David
> >> > > > >
> >> > > > >> Thanks
> >> > > > >> Manu
> >> > > > >>
> >> > > > >> On 11/20/06, David Blevins <da...@visi.com> wrote:
> >> > > > >>> On Nov 20, 2006, at 1:48 AM, Manu George wrote:
> >> > > > >>>
> >> > > > >>> > Hi David,
> >> > > > >>> > Have you created the beans that we are
> >> going to test
> >> > > > >>> > annotations? If not shall I go ahead and create the
> >> beans as
> >> > > > >>> extending
> >> > > > >>> > from the current test beans. I plan to create the
> >> session beans
> >> > > > >>> > required for testing the annotations you have
> >> implemented.
> >> > > > >>>
> >> > > > >>> Go for it!
> >> > > > >>>
> >> > > > >>> You can throw everything into an itests/openejb-itests-
> >> annotated-
> >> > > > >>> beans/ module.
> >> > > > >>>
> >> > > > >>> Note sure just yet how we'll wire it in to run with the
> >> other tests.
> >> > > > >>> If you have any ideas, I'm all ears.
> >> > > > >>>
> >> > > > >>> -David
> >> > > > >>>
> >> > > > >>>
> >> > > > >>>
> >> > > > >>>
> >> > > > >>
> >> > > > >
> >> > > >
> >> > > >
> >> > >
> >> >
> >>
> >
>
>
Re: Regarding testing annotated beans
Posted by David Blevins <da...@visi.com>.
On Feb 13, 2007, at 4:26 PM, Manu George wrote:
> Hi,
>
> Sorry for being absent for some time ;) some hectic schedules and
> travel kept me away.
Sounds relaxing ;)
> Regarding the testing of annotated beans I have come up with the
> following annotations that need tests(copied from from dave B's list).
> I believe it will be simpler to have a few new EJB's and tests for
> these instead of the approach I proposed previously which requires a
> lot of redundant EJB's to be created .
Yea, starting to think the same myself.
>
> I have listed 36 annotations. They will need 36 tests for testing them
> and 36 others for overrides with dd. I think this is the simplest way
> to go ahead. I am thinking that first I will create a few annotated
> EJB's in the existing itests to check out these scenarios. If this
> approach is ok I can start raising JIRA's and working on the tests.
Go ahead! I think we've got a few covered already. Check out
AnnotatedFieldInjectionStatefulBean and
AnnotatedFieldInjectionStatelessBean
JIRA away! Would be cool if you could duplicate the parent issue for
implementing annotations and have it automatically duplicate all the
child issues too. Then you could just update them to say "iTest:"
But I'd be surprised if JIRA worked like that.
/me lives in a fantasy world
-David
>
> Regards
> Manu
>
>
>
> On 2/1/07, Manu George <ma...@gmail.com> wrote:
>> Ok got it resolved pls ignore my prev mail
>>
>> Regards
>> Manu
>>
>> On 1/31/07, Manu George <ma...@gmail.com> wrote:
>> > Hi,
>> > I did some experimentation on this approach and came up with
>> > the following problem.
>> > Currently when the iTests are run for an application in the
>> > openejb-core module, there is an application.xml which gets loaded
>> > which has the element
>> >
>> > <module>
>> > <ejb>openejb-itests-beans-3.0-incubating-SNAPSHOT.jar</ejb>
>> > </module>
>> >
>> > So when I try to run the annotated beans in the module
>> > openejb-itests-annotated-beans-3.0-incubating-SNAPSHOT.jar
>> > by hiding the openejb-itests-beans I get an error saying the module
>> > openejb-itests-beans-3.0-incubating-SNAPSHOT.jar cannot be loaded.
>> > Is there any way to work around this?
>> >
>> > Regards
>> > Manu
>> >
>> >
>> >
>> >
>> >
>> >
>> > On 1/24/07, Manu George <ma...@gmail.com> wrote:
>> > > Yes thats a good idea. I had forgotten about this :). Let me
>> look into
>> > > creating a separate test suite for this
>> > >
>> > > Regards
>> > > Manu
>> > >
>> > > On 1/24/07, David Blevins <da...@visi.com> wrote:
>> > > > Following up in this thread as I need to plug in some
>> annotation
>> > > > based test into the itests as we are having some issues in the
>> > > > Geronimo integration that are nearly impossible to get
>> working or
>> > > > ensure are working without actual annotations.
>> > > >
>> > > > We had discussed a separate test suite for annotated beans,
>> which is
>> > > > still a good idea. I plan to make a purely annotated
>> version of our
>> > > > jndi enc and field injection tests, I'll just put them in
>> new classes
>> > > > next to the other tests. We can move them out later if we
>> want to go
>> > > > ahead with the plan to test a completely ejb-jar.xml free
>> set of itests.
>> > > >
>> > > >
>> > > > -David
>> > > >
>> > > >
>> > > > On Nov 26, 2006, at 6:48 PM, David Blevins wrote:
>> > > >
>> > > > > Hi Manu,
>> > > > >
>> > > > > On Nov 23, 2006, at 2:04 AM, Manu George wrote:
>> > > > >
>> > > > >> Hi David/Mohammad,
>> > > > >>
>> > > > >> What I was planning was to add annotated beans for each
>> of the
>> > > > >> corressponding beans deployed using the deployment
>> descriptor. Then
>> > > > >> execute all the test cases existing for the dd deployed
>> beans for the
>> > > > >> annotated beans as well.
>> > > > >
>> > > > > Sounds great.
>> > > > >
>> > > > >> In addition to this we need to create new
>> > > > >> test cases for checking the overrides as well as the
>> defaults(i.e.
>> > > > >> beans with the very minimum annotations. The unpecified
>> config
>> > > > >> attributes should be substituted by defaults).
>> > > > >
>> > > > > Even with the override testing idea I posted before, we'll
>> still
>> > > > > want a few beans and tests, so this is still a good idea.
>> > > > >
>> > > > >> I was thinking that if we can deploy the annotated
>> ejbs with
>> > > > >> the same name as the dd based ones we can execute the
>> existing tests
>> > > > >> as well. We will have the beans and remote interfaces
>> extending from
>> > > > >> the existing ones as well.
>> > > > >
>> > > > > We don't have support for it yet, but we can use the
>> mappedName
>> > > > > attribute of the @Stateful, @Stateless, or @MessageDriven
>> > > > > annotations to specify the OpenEJB deploymentId. We'll
>> likely want
>> > > > > to start using the mappedName of some of the other
>> annotations as
>> > > > > well. And we'll definitely want to document how we've
>> allocated
>> > > > > the "mappedName" attributes of various annotations on the
>> website
>> > > > > nice and clearly as it's vendor-specific. Maybe a table
>> of some sort.
>> > > > >
>> > > > >> I plan to implement this by creating two new
>> TestSuites
>> > > > >> corressponding to iTest and RemoteiTest namely
>> AnnotatediTest and
>> > > > >> AnnotatedRemoteiTest. In iTest and RemoteiTest I will add
>> the
>> > > > >> following system property
>> > > > >> System.setProperty("openejb.deployments.classpath.exclude",
>> > > > >> ".*openejb-itests-annotated-beans.*");
>> > > > >> This will prevent openejb from loading the descriptors in
>> that
>> > > > >> directory and so the annotated beans.Similarly if I set
>> the property
>> > > > >> to .*openejb-itests-beans.* in AnnotatediTests suite then
>> the dd
>> > > > >> based
>> > > > >> beans won't be deployed. This will minimize the tests we
>> need to
>> > > > >> write
>> > > > >> for annotated beans.
>> > > > >
>> > > > > Exactly what that's for! Though I'm beginning to think we
>> should
>> > > > > add an "openejb.deployments.classpath.include" as well.
>> Is this
>> > > > > something someone want's to add?
>> > > > >
>> > > > >> One issue I am not sure of here is even though we
>> > > > >> will have annotated business interfaces in the jar
>> deployed in server
>> > > > >> the existing tests will use the parent interfaces only so
>> we may need
>> > > > >> to create some tests with annotated interfaces used at
>> client side.
>> > > > >
>> > > > > I'm not sure out that will play out either. We should be
>> able to
>> > > > > get by, but there may be places we want tests dedicated to
>> the
>> > > > > annotated beans/interfaces.
>> > > > >
>> > > > >> Now I may have been missing something when i came
>> up with
>> > > > >> this approach and so it may not work. So I am looking for
>> your
>> > > > >> comments poiniting out the issues with this approach. Better
>> > > > >> ideas,improvements and comments are welcome from anyone.
>> > > > >
>> > > > > You nailed it pretty well.
>> > > > >
>> > > > > One thing in general is that the field injection, setter
>> injection,
>> > > > > EJBContext.lookup (no JIRA for this yet), and JNDI ENC
>> lookup tests
>> > > > > are all going to doing pretty much the exact same things.
>> It'd be
>> > > > > best if they were all as similar as possible. We have a
>> test for
>> > > > > the JNDI ENC lookups on the types available in EJB 1.1
>> (needs to be
>> > > > > updated for EJB3 also).
>> > > > >
>> > > > > http://svn.apache.org/repos/asf/incubator/openejb/trunk/
>> openejb3/
>> > > > > itests/openejb-itests-beans/src/main/java/org/apache/
>> openejb/test/
>> > > > > stateless/EncStatelessBean.java
>> > > > > http://svn.apache.org/repos/asf/incubator/openejb/trunk/
>> openejb3/
>> > > > > itests/openejb-itests-client/src/main/java/org/apache/
>> openejb/test/
>> > > > > stateless/StatelessJndiEncTests.java
>> > > > >
>> > > > > This may or may not be useful as a launching pad for the new
>> > > > > tests. We don't have to follow that style and we very
>> well may
>> > > > > want to rewrite that test to follow the style of the new
>> tests if
>> > > > > it turns out to be different.
>> > > > >
>> > > > > -David
>> > > > >
>> > > > >> Thanks
>> > > > >> Manu
>> > > > >>
>> > > > >> On 11/20/06, David Blevins <da...@visi.com> wrote:
>> > > > >>> On Nov 20, 2006, at 1:48 AM, Manu George wrote:
>> > > > >>>
>> > > > >>> > Hi David,
>> > > > >>> > Have you created the beans that we are
>> going to test
>> > > > >>> > annotations? If not shall I go ahead and create the
>> beans as
>> > > > >>> extending
>> > > > >>> > from the current test beans. I plan to create the
>> session beans
>> > > > >>> > required for testing the annotations you have
>> implemented.
>> > > > >>>
>> > > > >>> Go for it!
>> > > > >>>
>> > > > >>> You can throw everything into an itests/openejb-itests-
>> annotated-
>> > > > >>> beans/ module.
>> > > > >>>
>> > > > >>> Note sure just yet how we'll wire it in to run with the
>> other tests.
>> > > > >>> If you have any ideas, I'm all ears.
>> > > > >>>
>> > > > >>> -David
>> > > > >>>
>> > > > >>>
>> > > > >>>
>> > > > >>>
>> > > > >>
>> > > > >
>> > > >
>> > > >
>> > >
>> >
>>
>
Re: Regarding testing annotated beans
Posted by Manu George <ma...@gmail.com>.
Hi,
Sorry for being absent for some time ;) some hectic schedules and
travel kept me away.
Regarding the testing of annotated beans I have come up with the
following annotations that need tests(copied from from dave B's list).
I believe it will be simpler to have a few new EJB's and tests for
these instead of the approach I proposed previously which requires a
lot of redundant EJB's to be created .
javax.annotation.PostConstruct
javax.annotation.PreDestroy
javax.annotation.Resource
javax.annotation.Resources
javax.annotation.security.DeclareRoles
javax.annotation.security.DenyAll
javax.annotation.security.PermitAll
javax.annotation.security.RolesAllowed
javax.annotation.security.RunAs
javax.ejb.ActivationConfigProperty
javax.ejb.ApplicationException
javax.ejb.EJB
javax.ejb.EJBs
javax.ejb.Init
javax.ejb.Local
javax.ejb.LocalHome
javax.ejb.MessageDriven
javax.ejb.PostActivate
javax.ejb.PrePassivate
javax.ejb.Remote
javax.ejb.RemoteHome
javax.ejb.Remove
javax.ejb.Stateful
javax.ejb.Stateless
javax.ejb.Timeout
javax.ejb.TransactionAttribute
javax.ejb.TransactionManagement
javax.interceptor.AroundInvoke
javax.interceptor.ExcludeClassInterceptors
javax.interceptor.ExcludeDefaultInterceptors
javax.interceptor.Interceptors
javax.persistence.PersistenceContext
javax.persistence.PersistenceContexts
javax.persistence.PersistenceProperty
javax.persistence.PersistenceUnit
javax.persistence.PersistenceUnits
I have listed 36 annotations. They will need 36 tests for testing them
and 36 others for overrides with dd. I think this is the simplest way
to go ahead. I am thinking that first I will create a few annotated
EJB's in the existing itests to check out these scenarios. If this
approach is ok I can start raising JIRA's and working on the tests.
Regards
Manu
On 2/1/07, Manu George <ma...@gmail.com> wrote:
> Ok got it resolved pls ignore my prev mail
>
> Regards
> Manu
>
> On 1/31/07, Manu George <ma...@gmail.com> wrote:
> > Hi,
> > I did some experimentation on this approach and came up with
> > the following problem.
> > Currently when the iTests are run for an application in the
> > openejb-core module, there is an application.xml which gets loaded
> > which has the element
> >
> > <module>
> > <ejb>openejb-itests-beans-3.0-incubating-SNAPSHOT.jar</ejb>
> > </module>
> >
> > So when I try to run the annotated beans in the module
> > openejb-itests-annotated-beans-3.0-incubating-SNAPSHOT.jar
> > by hiding the openejb-itests-beans I get an error saying the module
> > openejb-itests-beans-3.0-incubating-SNAPSHOT.jar cannot be loaded.
> > Is there any way to work around this?
> >
> > Regards
> > Manu
> >
> >
> >
> >
> >
> >
> > On 1/24/07, Manu George <ma...@gmail.com> wrote:
> > > Yes thats a good idea. I had forgotten about this :). Let me look into
> > > creating a separate test suite for this
> > >
> > > Regards
> > > Manu
> > >
> > > On 1/24/07, David Blevins <da...@visi.com> wrote:
> > > > Following up in this thread as I need to plug in some annotation
> > > > based test into the itests as we are having some issues in the
> > > > Geronimo integration that are nearly impossible to get working or
> > > > ensure are working without actual annotations.
> > > >
> > > > We had discussed a separate test suite for annotated beans, which is
> > > > still a good idea. I plan to make a purely annotated version of our
> > > > jndi enc and field injection tests, I'll just put them in new classes
> > > > next to the other tests. We can move them out later if we want to go
> > > > ahead with the plan to test a completely ejb-jar.xml free set of itests.
> > > >
> > > >
> > > > -David
> > > >
> > > >
> > > > On Nov 26, 2006, at 6:48 PM, David Blevins wrote:
> > > >
> > > > > Hi Manu,
> > > > >
> > > > > On Nov 23, 2006, at 2:04 AM, Manu George wrote:
> > > > >
> > > > >> Hi David/Mohammad,
> > > > >>
> > > > >> What I was planning was to add annotated beans for each of the
> > > > >> corressponding beans deployed using the deployment descriptor. Then
> > > > >> execute all the test cases existing for the dd deployed beans for the
> > > > >> annotated beans as well.
> > > > >
> > > > > Sounds great.
> > > > >
> > > > >> In addition to this we need to create new
> > > > >> test cases for checking the overrides as well as the defaults(i.e.
> > > > >> beans with the very minimum annotations. The unpecified config
> > > > >> attributes should be substituted by defaults).
> > > > >
> > > > > Even with the override testing idea I posted before, we'll still
> > > > > want a few beans and tests, so this is still a good idea.
> > > > >
> > > > >> I was thinking that if we can deploy the annotated ejbs with
> > > > >> the same name as the dd based ones we can execute the existing tests
> > > > >> as well. We will have the beans and remote interfaces extending from
> > > > >> the existing ones as well.
> > > > >
> > > > > We don't have support for it yet, but we can use the mappedName
> > > > > attribute of the @Stateful, @Stateless, or @MessageDriven
> > > > > annotations to specify the OpenEJB deploymentId. We'll likely want
> > > > > to start using the mappedName of some of the other annotations as
> > > > > well. And we'll definitely want to document how we've allocated
> > > > > the "mappedName" attributes of various annotations on the website
> > > > > nice and clearly as it's vendor-specific. Maybe a table of some sort.
> > > > >
> > > > >> I plan to implement this by creating two new TestSuites
> > > > >> corressponding to iTest and RemoteiTest namely AnnotatediTest and
> > > > >> AnnotatedRemoteiTest. In iTest and RemoteiTest I will add the
> > > > >> following system property
> > > > >> System.setProperty("openejb.deployments.classpath.exclude",
> > > > >> ".*openejb-itests-annotated-beans.*");
> > > > >> This will prevent openejb from loading the descriptors in that
> > > > >> directory and so the annotated beans.Similarly if I set the property
> > > > >> to .*openejb-itests-beans.* in AnnotatediTests suite then the dd
> > > > >> based
> > > > >> beans won't be deployed. This will minimize the tests we need to
> > > > >> write
> > > > >> for annotated beans.
> > > > >
> > > > > Exactly what that's for! Though I'm beginning to think we should
> > > > > add an "openejb.deployments.classpath.include" as well. Is this
> > > > > something someone want's to add?
> > > > >
> > > > >> One issue I am not sure of here is even though we
> > > > >> will have annotated business interfaces in the jar deployed in server
> > > > >> the existing tests will use the parent interfaces only so we may need
> > > > >> to create some tests with annotated interfaces used at client side.
> > > > >
> > > > > I'm not sure out that will play out either. We should be able to
> > > > > get by, but there may be places we want tests dedicated to the
> > > > > annotated beans/interfaces.
> > > > >
> > > > >> Now I may have been missing something when i came up with
> > > > >> this approach and so it may not work. So I am looking for your
> > > > >> comments poiniting out the issues with this approach. Better
> > > > >> ideas,improvements and comments are welcome from anyone.
> > > > >
> > > > > You nailed it pretty well.
> > > > >
> > > > > One thing in general is that the field injection, setter injection,
> > > > > EJBContext.lookup (no JIRA for this yet), and JNDI ENC lookup tests
> > > > > are all going to doing pretty much the exact same things. It'd be
> > > > > best if they were all as similar as possible. We have a test for
> > > > > the JNDI ENC lookups on the types available in EJB 1.1 (needs to be
> > > > > updated for EJB3 also).
> > > > >
> > > > > http://svn.apache.org/repos/asf/incubator/openejb/trunk/openejb3/
> > > > > itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/
> > > > > stateless/EncStatelessBean.java
> > > > > http://svn.apache.org/repos/asf/incubator/openejb/trunk/openejb3/
> > > > > itests/openejb-itests-client/src/main/java/org/apache/openejb/test/
> > > > > stateless/StatelessJndiEncTests.java
> > > > >
> > > > > This may or may not be useful as a launching pad for the new
> > > > > tests. We don't have to follow that style and we very well may
> > > > > want to rewrite that test to follow the style of the new tests if
> > > > > it turns out to be different.
> > > > >
> > > > > -David
> > > > >
> > > > >> Thanks
> > > > >> Manu
> > > > >>
> > > > >> On 11/20/06, David Blevins <da...@visi.com> wrote:
> > > > >>> On Nov 20, 2006, at 1:48 AM, Manu George wrote:
> > > > >>>
> > > > >>> > Hi David,
> > > > >>> > Have you created the beans that we are going to test
> > > > >>> > annotations? If not shall I go ahead and create the beans as
> > > > >>> extending
> > > > >>> > from the current test beans. I plan to create the session beans
> > > > >>> > required for testing the annotations you have implemented.
> > > > >>>
> > > > >>> Go for it!
> > > > >>>
> > > > >>> You can throw everything into an itests/openejb-itests-annotated-
> > > > >>> beans/ module.
> > > > >>>
> > > > >>> Note sure just yet how we'll wire it in to run with the other tests.
> > > > >>> If you have any ideas, I'm all ears.
> > > > >>>
> > > > >>> -David
> > > > >>>
> > > > >>>
> > > > >>>
> > > > >>>
> > > > >>
> > > > >
> > > >
> > > >
> > >
> >
>
Re: Regarding testing annotated beans
Posted by Manu George <ma...@gmail.com>.
Ok got it resolved pls ignore my prev mail
Regards
Manu
On 1/31/07, Manu George <ma...@gmail.com> wrote:
> Hi,
> I did some experimentation on this approach and came up with
> the following problem.
> Currently when the iTests are run for an application in the
> openejb-core module, there is an application.xml which gets loaded
> which has the element
>
> <module>
> <ejb>openejb-itests-beans-3.0-incubating-SNAPSHOT.jar</ejb>
> </module>
>
> So when I try to run the annotated beans in the module
> openejb-itests-annotated-beans-3.0-incubating-SNAPSHOT.jar
> by hiding the openejb-itests-beans I get an error saying the module
> openejb-itests-beans-3.0-incubating-SNAPSHOT.jar cannot be loaded.
> Is there any way to work around this?
>
> Regards
> Manu
>
>
>
>
>
>
> On 1/24/07, Manu George <ma...@gmail.com> wrote:
> > Yes thats a good idea. I had forgotten about this :). Let me look into
> > creating a separate test suite for this
> >
> > Regards
> > Manu
> >
> > On 1/24/07, David Blevins <da...@visi.com> wrote:
> > > Following up in this thread as I need to plug in some annotation
> > > based test into the itests as we are having some issues in the
> > > Geronimo integration that are nearly impossible to get working or
> > > ensure are working without actual annotations.
> > >
> > > We had discussed a separate test suite for annotated beans, which is
> > > still a good idea. I plan to make a purely annotated version of our
> > > jndi enc and field injection tests, I'll just put them in new classes
> > > next to the other tests. We can move them out later if we want to go
> > > ahead with the plan to test a completely ejb-jar.xml free set of itests.
> > >
> > >
> > > -David
> > >
> > >
> > > On Nov 26, 2006, at 6:48 PM, David Blevins wrote:
> > >
> > > > Hi Manu,
> > > >
> > > > On Nov 23, 2006, at 2:04 AM, Manu George wrote:
> > > >
> > > >> Hi David/Mohammad,
> > > >>
> > > >> What I was planning was to add annotated beans for each of the
> > > >> corressponding beans deployed using the deployment descriptor. Then
> > > >> execute all the test cases existing for the dd deployed beans for the
> > > >> annotated beans as well.
> > > >
> > > > Sounds great.
> > > >
> > > >> In addition to this we need to create new
> > > >> test cases for checking the overrides as well as the defaults(i.e.
> > > >> beans with the very minimum annotations. The unpecified config
> > > >> attributes should be substituted by defaults).
> > > >
> > > > Even with the override testing idea I posted before, we'll still
> > > > want a few beans and tests, so this is still a good idea.
> > > >
> > > >> I was thinking that if we can deploy the annotated ejbs with
> > > >> the same name as the dd based ones we can execute the existing tests
> > > >> as well. We will have the beans and remote interfaces extending from
> > > >> the existing ones as well.
> > > >
> > > > We don't have support for it yet, but we can use the mappedName
> > > > attribute of the @Stateful, @Stateless, or @MessageDriven
> > > > annotations to specify the OpenEJB deploymentId. We'll likely want
> > > > to start using the mappedName of some of the other annotations as
> > > > well. And we'll definitely want to document how we've allocated
> > > > the "mappedName" attributes of various annotations on the website
> > > > nice and clearly as it's vendor-specific. Maybe a table of some sort.
> > > >
> > > >> I plan to implement this by creating two new TestSuites
> > > >> corressponding to iTest and RemoteiTest namely AnnotatediTest and
> > > >> AnnotatedRemoteiTest. In iTest and RemoteiTest I will add the
> > > >> following system property
> > > >> System.setProperty("openejb.deployments.classpath.exclude",
> > > >> ".*openejb-itests-annotated-beans.*");
> > > >> This will prevent openejb from loading the descriptors in that
> > > >> directory and so the annotated beans.Similarly if I set the property
> > > >> to .*openejb-itests-beans.* in AnnotatediTests suite then the dd
> > > >> based
> > > >> beans won't be deployed. This will minimize the tests we need to
> > > >> write
> > > >> for annotated beans.
> > > >
> > > > Exactly what that's for! Though I'm beginning to think we should
> > > > add an "openejb.deployments.classpath.include" as well. Is this
> > > > something someone want's to add?
> > > >
> > > >> One issue I am not sure of here is even though we
> > > >> will have annotated business interfaces in the jar deployed in server
> > > >> the existing tests will use the parent interfaces only so we may need
> > > >> to create some tests with annotated interfaces used at client side.
> > > >
> > > > I'm not sure out that will play out either. We should be able to
> > > > get by, but there may be places we want tests dedicated to the
> > > > annotated beans/interfaces.
> > > >
> > > >> Now I may have been missing something when i came up with
> > > >> this approach and so it may not work. So I am looking for your
> > > >> comments poiniting out the issues with this approach. Better
> > > >> ideas,improvements and comments are welcome from anyone.
> > > >
> > > > You nailed it pretty well.
> > > >
> > > > One thing in general is that the field injection, setter injection,
> > > > EJBContext.lookup (no JIRA for this yet), and JNDI ENC lookup tests
> > > > are all going to doing pretty much the exact same things. It'd be
> > > > best if they were all as similar as possible. We have a test for
> > > > the JNDI ENC lookups on the types available in EJB 1.1 (needs to be
> > > > updated for EJB3 also).
> > > >
> > > > http://svn.apache.org/repos/asf/incubator/openejb/trunk/openejb3/
> > > > itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/
> > > > stateless/EncStatelessBean.java
> > > > http://svn.apache.org/repos/asf/incubator/openejb/trunk/openejb3/
> > > > itests/openejb-itests-client/src/main/java/org/apache/openejb/test/
> > > > stateless/StatelessJndiEncTests.java
> > > >
> > > > This may or may not be useful as a launching pad for the new
> > > > tests. We don't have to follow that style and we very well may
> > > > want to rewrite that test to follow the style of the new tests if
> > > > it turns out to be different.
> > > >
> > > > -David
> > > >
> > > >> Thanks
> > > >> Manu
> > > >>
> > > >> On 11/20/06, David Blevins <da...@visi.com> wrote:
> > > >>> On Nov 20, 2006, at 1:48 AM, Manu George wrote:
> > > >>>
> > > >>> > Hi David,
> > > >>> > Have you created the beans that we are going to test
> > > >>> > annotations? If not shall I go ahead and create the beans as
> > > >>> extending
> > > >>> > from the current test beans. I plan to create the session beans
> > > >>> > required for testing the annotations you have implemented.
> > > >>>
> > > >>> Go for it!
> > > >>>
> > > >>> You can throw everything into an itests/openejb-itests-annotated-
> > > >>> beans/ module.
> > > >>>
> > > >>> Note sure just yet how we'll wire it in to run with the other tests.
> > > >>> If you have any ideas, I'm all ears.
> > > >>>
> > > >>> -David
> > > >>>
> > > >>>
> > > >>>
> > > >>>
> > > >>
> > > >
> > >
> > >
> >
>
Re: Regarding testing annotated beans
Posted by Manu George <ma...@gmail.com>.
Hi,
I did some experimentation on this approach and came up with
the following problem.
Currently when the iTests are run for an application in the
openejb-core module, there is an application.xml which gets loaded
which has the element
<module>
<ejb>openejb-itests-beans-3.0-incubating-SNAPSHOT.jar</ejb>
</module>
So when I try to run the annotated beans in the module
openejb-itests-annotated-beans-3.0-incubating-SNAPSHOT.jar
by hiding the openejb-itests-beans I get an error saying the module
openejb-itests-beans-3.0-incubating-SNAPSHOT.jar cannot be loaded.
Is there any way to work around this?
Regards
Manu
On 1/24/07, Manu George <ma...@gmail.com> wrote:
> Yes thats a good idea. I had forgotten about this :). Let me look into
> creating a separate test suite for this
>
> Regards
> Manu
>
> On 1/24/07, David Blevins <da...@visi.com> wrote:
> > Following up in this thread as I need to plug in some annotation
> > based test into the itests as we are having some issues in the
> > Geronimo integration that are nearly impossible to get working or
> > ensure are working without actual annotations.
> >
> > We had discussed a separate test suite for annotated beans, which is
> > still a good idea. I plan to make a purely annotated version of our
> > jndi enc and field injection tests, I'll just put them in new classes
> > next to the other tests. We can move them out later if we want to go
> > ahead with the plan to test a completely ejb-jar.xml free set of itests.
> >
> >
> > -David
> >
> >
> > On Nov 26, 2006, at 6:48 PM, David Blevins wrote:
> >
> > > Hi Manu,
> > >
> > > On Nov 23, 2006, at 2:04 AM, Manu George wrote:
> > >
> > >> Hi David/Mohammad,
> > >>
> > >> What I was planning was to add annotated beans for each of the
> > >> corressponding beans deployed using the deployment descriptor. Then
> > >> execute all the test cases existing for the dd deployed beans for the
> > >> annotated beans as well.
> > >
> > > Sounds great.
> > >
> > >> In addition to this we need to create new
> > >> test cases for checking the overrides as well as the defaults(i.e.
> > >> beans with the very minimum annotations. The unpecified config
> > >> attributes should be substituted by defaults).
> > >
> > > Even with the override testing idea I posted before, we'll still
> > > want a few beans and tests, so this is still a good idea.
> > >
> > >> I was thinking that if we can deploy the annotated ejbs with
> > >> the same name as the dd based ones we can execute the existing tests
> > >> as well. We will have the beans and remote interfaces extending from
> > >> the existing ones as well.
> > >
> > > We don't have support for it yet, but we can use the mappedName
> > > attribute of the @Stateful, @Stateless, or @MessageDriven
> > > annotations to specify the OpenEJB deploymentId. We'll likely want
> > > to start using the mappedName of some of the other annotations as
> > > well. And we'll definitely want to document how we've allocated
> > > the "mappedName" attributes of various annotations on the website
> > > nice and clearly as it's vendor-specific. Maybe a table of some sort.
> > >
> > >> I plan to implement this by creating two new TestSuites
> > >> corressponding to iTest and RemoteiTest namely AnnotatediTest and
> > >> AnnotatedRemoteiTest. In iTest and RemoteiTest I will add the
> > >> following system property
> > >> System.setProperty("openejb.deployments.classpath.exclude",
> > >> ".*openejb-itests-annotated-beans.*");
> > >> This will prevent openejb from loading the descriptors in that
> > >> directory and so the annotated beans.Similarly if I set the property
> > >> to .*openejb-itests-beans.* in AnnotatediTests suite then the dd
> > >> based
> > >> beans won't be deployed. This will minimize the tests we need to
> > >> write
> > >> for annotated beans.
> > >
> > > Exactly what that's for! Though I'm beginning to think we should
> > > add an "openejb.deployments.classpath.include" as well. Is this
> > > something someone want's to add?
> > >
> > >> One issue I am not sure of here is even though we
> > >> will have annotated business interfaces in the jar deployed in server
> > >> the existing tests will use the parent interfaces only so we may need
> > >> to create some tests with annotated interfaces used at client side.
> > >
> > > I'm not sure out that will play out either. We should be able to
> > > get by, but there may be places we want tests dedicated to the
> > > annotated beans/interfaces.
> > >
> > >> Now I may have been missing something when i came up with
> > >> this approach and so it may not work. So I am looking for your
> > >> comments poiniting out the issues with this approach. Better
> > >> ideas,improvements and comments are welcome from anyone.
> > >
> > > You nailed it pretty well.
> > >
> > > One thing in general is that the field injection, setter injection,
> > > EJBContext.lookup (no JIRA for this yet), and JNDI ENC lookup tests
> > > are all going to doing pretty much the exact same things. It'd be
> > > best if they were all as similar as possible. We have a test for
> > > the JNDI ENC lookups on the types available in EJB 1.1 (needs to be
> > > updated for EJB3 also).
> > >
> > > http://svn.apache.org/repos/asf/incubator/openejb/trunk/openejb3/
> > > itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/
> > > stateless/EncStatelessBean.java
> > > http://svn.apache.org/repos/asf/incubator/openejb/trunk/openejb3/
> > > itests/openejb-itests-client/src/main/java/org/apache/openejb/test/
> > > stateless/StatelessJndiEncTests.java
> > >
> > > This may or may not be useful as a launching pad for the new
> > > tests. We don't have to follow that style and we very well may
> > > want to rewrite that test to follow the style of the new tests if
> > > it turns out to be different.
> > >
> > > -David
> > >
> > >> Thanks
> > >> Manu
> > >>
> > >> On 11/20/06, David Blevins <da...@visi.com> wrote:
> > >>> On Nov 20, 2006, at 1:48 AM, Manu George wrote:
> > >>>
> > >>> > Hi David,
> > >>> > Have you created the beans that we are going to test
> > >>> > annotations? If not shall I go ahead and create the beans as
> > >>> extending
> > >>> > from the current test beans. I plan to create the session beans
> > >>> > required for testing the annotations you have implemented.
> > >>>
> > >>> Go for it!
> > >>>
> > >>> You can throw everything into an itests/openejb-itests-annotated-
> > >>> beans/ module.
> > >>>
> > >>> Note sure just yet how we'll wire it in to run with the other tests.
> > >>> If you have any ideas, I'm all ears.
> > >>>
> > >>> -David
> > >>>
> > >>>
> > >>>
> > >>>
> > >>
> > >
> >
> >
>
Re: Regarding testing annotated beans
Posted by Manu George <ma...@gmail.com>.
Yes thats a good idea. I had forgotten about this :). Let me look into
creating a separate test suite for this
Regards
Manu
On 1/24/07, David Blevins <da...@visi.com> wrote:
> Following up in this thread as I need to plug in some annotation
> based test into the itests as we are having some issues in the
> Geronimo integration that are nearly impossible to get working or
> ensure are working without actual annotations.
>
> We had discussed a separate test suite for annotated beans, which is
> still a good idea. I plan to make a purely annotated version of our
> jndi enc and field injection tests, I'll just put them in new classes
> next to the other tests. We can move them out later if we want to go
> ahead with the plan to test a completely ejb-jar.xml free set of itests.
>
>
> -David
>
>
> On Nov 26, 2006, at 6:48 PM, David Blevins wrote:
>
> > Hi Manu,
> >
> > On Nov 23, 2006, at 2:04 AM, Manu George wrote:
> >
> >> Hi David/Mohammad,
> >>
> >> What I was planning was to add annotated beans for each of the
> >> corressponding beans deployed using the deployment descriptor. Then
> >> execute all the test cases existing for the dd deployed beans for the
> >> annotated beans as well.
> >
> > Sounds great.
> >
> >> In addition to this we need to create new
> >> test cases for checking the overrides as well as the defaults(i.e.
> >> beans with the very minimum annotations. The unpecified config
> >> attributes should be substituted by defaults).
> >
> > Even with the override testing idea I posted before, we'll still
> > want a few beans and tests, so this is still a good idea.
> >
> >> I was thinking that if we can deploy the annotated ejbs with
> >> the same name as the dd based ones we can execute the existing tests
> >> as well. We will have the beans and remote interfaces extending from
> >> the existing ones as well.
> >
> > We don't have support for it yet, but we can use the mappedName
> > attribute of the @Stateful, @Stateless, or @MessageDriven
> > annotations to specify the OpenEJB deploymentId. We'll likely want
> > to start using the mappedName of some of the other annotations as
> > well. And we'll definitely want to document how we've allocated
> > the "mappedName" attributes of various annotations on the website
> > nice and clearly as it's vendor-specific. Maybe a table of some sort.
> >
> >> I plan to implement this by creating two new TestSuites
> >> corressponding to iTest and RemoteiTest namely AnnotatediTest and
> >> AnnotatedRemoteiTest. In iTest and RemoteiTest I will add the
> >> following system property
> >> System.setProperty("openejb.deployments.classpath.exclude",
> >> ".*openejb-itests-annotated-beans.*");
> >> This will prevent openejb from loading the descriptors in that
> >> directory and so the annotated beans.Similarly if I set the property
> >> to .*openejb-itests-beans.* in AnnotatediTests suite then the dd
> >> based
> >> beans won't be deployed. This will minimize the tests we need to
> >> write
> >> for annotated beans.
> >
> > Exactly what that's for! Though I'm beginning to think we should
> > add an "openejb.deployments.classpath.include" as well. Is this
> > something someone want's to add?
> >
> >> One issue I am not sure of here is even though we
> >> will have annotated business interfaces in the jar deployed in server
> >> the existing tests will use the parent interfaces only so we may need
> >> to create some tests with annotated interfaces used at client side.
> >
> > I'm not sure out that will play out either. We should be able to
> > get by, but there may be places we want tests dedicated to the
> > annotated beans/interfaces.
> >
> >> Now I may have been missing something when i came up with
> >> this approach and so it may not work. So I am looking for your
> >> comments poiniting out the issues with this approach. Better
> >> ideas,improvements and comments are welcome from anyone.
> >
> > You nailed it pretty well.
> >
> > One thing in general is that the field injection, setter injection,
> > EJBContext.lookup (no JIRA for this yet), and JNDI ENC lookup tests
> > are all going to doing pretty much the exact same things. It'd be
> > best if they were all as similar as possible. We have a test for
> > the JNDI ENC lookups on the types available in EJB 1.1 (needs to be
> > updated for EJB3 also).
> >
> > http://svn.apache.org/repos/asf/incubator/openejb/trunk/openejb3/
> > itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/
> > stateless/EncStatelessBean.java
> > http://svn.apache.org/repos/asf/incubator/openejb/trunk/openejb3/
> > itests/openejb-itests-client/src/main/java/org/apache/openejb/test/
> > stateless/StatelessJndiEncTests.java
> >
> > This may or may not be useful as a launching pad for the new
> > tests. We don't have to follow that style and we very well may
> > want to rewrite that test to follow the style of the new tests if
> > it turns out to be different.
> >
> > -David
> >
> >> Thanks
> >> Manu
> >>
> >> On 11/20/06, David Blevins <da...@visi.com> wrote:
> >>> On Nov 20, 2006, at 1:48 AM, Manu George wrote:
> >>>
> >>> > Hi David,
> >>> > Have you created the beans that we are going to test
> >>> > annotations? If not shall I go ahead and create the beans as
> >>> extending
> >>> > from the current test beans. I plan to create the session beans
> >>> > required for testing the annotations you have implemented.
> >>>
> >>> Go for it!
> >>>
> >>> You can throw everything into an itests/openejb-itests-annotated-
> >>> beans/ module.
> >>>
> >>> Note sure just yet how we'll wire it in to run with the other tests.
> >>> If you have any ideas, I'm all ears.
> >>>
> >>> -David
> >>>
> >>>
> >>>
> >>>
> >>
> >
>
>
Re: Regarding testing annotated beans
Posted by David Blevins <da...@visi.com>.
Following up in this thread as I need to plug in some annotation
based test into the itests as we are having some issues in the
Geronimo integration that are nearly impossible to get working or
ensure are working without actual annotations.
We had discussed a separate test suite for annotated beans, which is
still a good idea. I plan to make a purely annotated version of our
jndi enc and field injection tests, I'll just put them in new classes
next to the other tests. We can move them out later if we want to go
ahead with the plan to test a completely ejb-jar.xml free set of itests.
-David
On Nov 26, 2006, at 6:48 PM, David Blevins wrote:
> Hi Manu,
>
> On Nov 23, 2006, at 2:04 AM, Manu George wrote:
>
>> Hi David/Mohammad,
>>
>> What I was planning was to add annotated beans for each of the
>> corressponding beans deployed using the deployment descriptor. Then
>> execute all the test cases existing for the dd deployed beans for the
>> annotated beans as well.
>
> Sounds great.
>
>> In addition to this we need to create new
>> test cases for checking the overrides as well as the defaults(i.e.
>> beans with the very minimum annotations. The unpecified config
>> attributes should be substituted by defaults).
>
> Even with the override testing idea I posted before, we'll still
> want a few beans and tests, so this is still a good idea.
>
>> I was thinking that if we can deploy the annotated ejbs with
>> the same name as the dd based ones we can execute the existing tests
>> as well. We will have the beans and remote interfaces extending from
>> the existing ones as well.
>
> We don't have support for it yet, but we can use the mappedName
> attribute of the @Stateful, @Stateless, or @MessageDriven
> annotations to specify the OpenEJB deploymentId. We'll likely want
> to start using the mappedName of some of the other annotations as
> well. And we'll definitely want to document how we've allocated
> the "mappedName" attributes of various annotations on the website
> nice and clearly as it's vendor-specific. Maybe a table of some sort.
>
>> I plan to implement this by creating two new TestSuites
>> corressponding to iTest and RemoteiTest namely AnnotatediTest and
>> AnnotatedRemoteiTest. In iTest and RemoteiTest I will add the
>> following system property
>> System.setProperty("openejb.deployments.classpath.exclude",
>> ".*openejb-itests-annotated-beans.*");
>> This will prevent openejb from loading the descriptors in that
>> directory and so the annotated beans.Similarly if I set the property
>> to .*openejb-itests-beans.* in AnnotatediTests suite then the dd
>> based
>> beans won't be deployed. This will minimize the tests we need to
>> write
>> for annotated beans.
>
> Exactly what that's for! Though I'm beginning to think we should
> add an "openejb.deployments.classpath.include" as well. Is this
> something someone want's to add?
>
>> One issue I am not sure of here is even though we
>> will have annotated business interfaces in the jar deployed in server
>> the existing tests will use the parent interfaces only so we may need
>> to create some tests with annotated interfaces used at client side.
>
> I'm not sure out that will play out either. We should be able to
> get by, but there may be places we want tests dedicated to the
> annotated beans/interfaces.
>
>> Now I may have been missing something when i came up with
>> this approach and so it may not work. So I am looking for your
>> comments poiniting out the issues with this approach. Better
>> ideas,improvements and comments are welcome from anyone.
>
> You nailed it pretty well.
>
> One thing in general is that the field injection, setter injection,
> EJBContext.lookup (no JIRA for this yet), and JNDI ENC lookup tests
> are all going to doing pretty much the exact same things. It'd be
> best if they were all as similar as possible. We have a test for
> the JNDI ENC lookups on the types available in EJB 1.1 (needs to be
> updated for EJB3 also).
>
> http://svn.apache.org/repos/asf/incubator/openejb/trunk/openejb3/
> itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/
> stateless/EncStatelessBean.java
> http://svn.apache.org/repos/asf/incubator/openejb/trunk/openejb3/
> itests/openejb-itests-client/src/main/java/org/apache/openejb/test/
> stateless/StatelessJndiEncTests.java
>
> This may or may not be useful as a launching pad for the new
> tests. We don't have to follow that style and we very well may
> want to rewrite that test to follow the style of the new tests if
> it turns out to be different.
>
> -David
>
>> Thanks
>> Manu
>>
>> On 11/20/06, David Blevins <da...@visi.com> wrote:
>>> On Nov 20, 2006, at 1:48 AM, Manu George wrote:
>>>
>>> > Hi David,
>>> > Have you created the beans that we are going to test
>>> > annotations? If not shall I go ahead and create the beans as
>>> extending
>>> > from the current test beans. I plan to create the session beans
>>> > required for testing the annotations you have implemented.
>>>
>>> Go for it!
>>>
>>> You can throw everything into an itests/openejb-itests-annotated-
>>> beans/ module.
>>>
>>> Note sure just yet how we'll wire it in to run with the other tests.
>>> If you have any ideas, I'm all ears.
>>>
>>> -David
>>>
>>>
>>>
>>>
>>
>
Re: Regarding testing annotated beans
Posted by Jacek Laskowski <ja...@laskowski.net.pl>.
On 11/27/06, Mohammad Nour El-Din <no...@gmail.com> wrote:
> Me me meeeeeeeeee :), I will create a JIRA and start on but when I get home
> as I am at work now.
Unless someone beats you to it. Hurry up! No need to stay late hours
in the office ;-)
Jacek
--
Jacek Laskowski
http://www.jaceklaskowski.pl
Re: Regarding testing annotated beans
Posted by Mohammad Nour El-Din <no...@gmail.com>.
Hi DBlevins...
On 11/27/06, David Blevins <da...@visi.com> wrote:
>
> Hi Manu,
>
> On Nov 23, 2006, at 2:04 AM, Manu George wrote:
>
> > Hi David/Mohammad,
> >
> > What I was planning was to add annotated beans for each of the
> > corressponding beans deployed using the deployment descriptor. Then
> > execute all the test cases existing for the dd deployed beans for the
> > annotated beans as well.
>
> Sounds great.
>
> > In addition to this we need to create new
> > test cases for checking the overrides as well as the defaults(i.e.
> > beans with the very minimum annotations. The unpecified config
> > attributes should be substituted by defaults).
>
> Even with the override testing idea I posted before, we'll still want
> a few beans and tests, so this is still a good idea.
>
> > I was thinking that if we can deploy the annotated ejbs with
> > the same name as the dd based ones we can execute the existing tests
> > as well. We will have the beans and remote interfaces extending from
> > the existing ones as well.
>
> We don't have support for it yet, but we can use the mappedName
> attribute of the @Stateful, @Stateless, or @MessageDriven annotations
> to specify the OpenEJB deploymentId. We'll likely want to start
> using the mappedName of some of the other annotations as well. And
> we'll definitely want to document how we've allocated the
> "mappedName" attributes of various annotations on the website nice
> and clearly as it's vendor-specific. Maybe a table of some sort.
>
> > I plan to implement this by creating two new TestSuites
> > corressponding to iTest and RemoteiTest namely AnnotatediTest and
> > AnnotatedRemoteiTest. In iTest and RemoteiTest I will add the
> > following system property
> > System.setProperty("openejb.deployments.classpath.exclude",
> > ".*openejb-itests-annotated-beans.*");
> > This will prevent openejb from loading the descriptors in that
> > directory and so the annotated beans.Similarly if I set the property
> > to .*openejb-itests-beans.* in AnnotatediTests suite then the dd based
> > beans won't be deployed. This will minimize the tests we need to write
> > for annotated beans.
>
> Exactly what that's for! Though I'm beginning to think we should add
> an "openejb.deployments.classpath.include" as well. Is this
> something someone want's to add?
Me me meeeeeeeeee :), I will create a JIRA and start on but when I get home
as I am at work now.
> One issue I am not sure of here is even though we
> > will have annotated business interfaces in the jar deployed in server
> > the existing tests will use the parent interfaces only so we may need
> > to create some tests with annotated interfaces used at client side.
>
> I'm not sure out that will play out either. We should be able to get
> by, but there may be places we want tests dedicated to the annotated
> beans/interfaces.
>
> > Now I may have been missing something when i came up with
> > this approach and so it may not work. So I am looking for your
> > comments poiniting out the issues with this approach. Better
> > ideas,improvements and comments are welcome from anyone.
>
> You nailed it pretty well.
>
> One thing in general is that the field injection, setter injection,
> EJBContext.lookup (no JIRA for this yet), and JNDI ENC lookup tests
> are all going to doing pretty much the exact same things. It'd be
> best if they were all as similar as possible. We have a test for the
> JNDI ENC lookups on the types available in EJB 1.1 (needs to be
> updated for EJB3 also).
>
> http://svn.apache.org/repos/asf/incubator/openejb/trunk/openejb3/
> itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/
> stateless/EncStatelessBean.java
> http://svn.apache.org/repos/asf/incubator/openejb/trunk/openejb3/
> itests/openejb-itests-client/src/main/java/org/apache/openejb/test/
> stateless/StatelessJndiEncTests.java
>
> This may or may not be useful as a launching pad for the new tests.
> We don't have to follow that style and we very well may want to
> rewrite that test to follow the style of the new tests if it turns
> out to be different.
>
> -David
>
> > Thanks
> > Manu
> >
> > On 11/20/06, David Blevins <da...@visi.com> wrote:
> >> On Nov 20, 2006, at 1:48 AM, Manu George wrote:
> >>
> >> > Hi David,
> >> > Have you created the beans that we are going to test
> >> > annotations? If not shall I go ahead and create the beans as
> >> extending
> >> > from the current test beans. I plan to create the session beans
> >> > required for testing the annotations you have implemented.
> >>
> >> Go for it!
> >>
> >> You can throw everything into an itests/openejb-itests-annotated-
> >> beans/ module.
> >>
> >> Note sure just yet how we'll wire it in to run with the other tests.
> >> If you have any ideas, I'm all ears.
> >>
> >> -David
> >>
> >>
> >>
> >>
> >
>
>
--
Thanks
- Mohammad Nour
Re: Regarding testing annotated beans
Posted by David Blevins <da...@visi.com>.
Hi Manu,
On Nov 23, 2006, at 2:04 AM, Manu George wrote:
> Hi David/Mohammad,
>
> What I was planning was to add annotated beans for each of the
> corressponding beans deployed using the deployment descriptor. Then
> execute all the test cases existing for the dd deployed beans for the
> annotated beans as well.
Sounds great.
> In addition to this we need to create new
> test cases for checking the overrides as well as the defaults(i.e.
> beans with the very minimum annotations. The unpecified config
> attributes should be substituted by defaults).
Even with the override testing idea I posted before, we'll still want
a few beans and tests, so this is still a good idea.
> I was thinking that if we can deploy the annotated ejbs with
> the same name as the dd based ones we can execute the existing tests
> as well. We will have the beans and remote interfaces extending from
> the existing ones as well.
We don't have support for it yet, but we can use the mappedName
attribute of the @Stateful, @Stateless, or @MessageDriven annotations
to specify the OpenEJB deploymentId. We'll likely want to start
using the mappedName of some of the other annotations as well. And
we'll definitely want to document how we've allocated the
"mappedName" attributes of various annotations on the website nice
and clearly as it's vendor-specific. Maybe a table of some sort.
> I plan to implement this by creating two new TestSuites
> corressponding to iTest and RemoteiTest namely AnnotatediTest and
> AnnotatedRemoteiTest. In iTest and RemoteiTest I will add the
> following system property
> System.setProperty("openejb.deployments.classpath.exclude",
> ".*openejb-itests-annotated-beans.*");
> This will prevent openejb from loading the descriptors in that
> directory and so the annotated beans.Similarly if I set the property
> to .*openejb-itests-beans.* in AnnotatediTests suite then the dd based
> beans won't be deployed. This will minimize the tests we need to write
> for annotated beans.
Exactly what that's for! Though I'm beginning to think we should add
an "openejb.deployments.classpath.include" as well. Is this
something someone want's to add?
> One issue I am not sure of here is even though we
> will have annotated business interfaces in the jar deployed in server
> the existing tests will use the parent interfaces only so we may need
> to create some tests with annotated interfaces used at client side.
I'm not sure out that will play out either. We should be able to get
by, but there may be places we want tests dedicated to the annotated
beans/interfaces.
> Now I may have been missing something when i came up with
> this approach and so it may not work. So I am looking for your
> comments poiniting out the issues with this approach. Better
> ideas,improvements and comments are welcome from anyone.
You nailed it pretty well.
One thing in general is that the field injection, setter injection,
EJBContext.lookup (no JIRA for this yet), and JNDI ENC lookup tests
are all going to doing pretty much the exact same things. It'd be
best if they were all as similar as possible. We have a test for the
JNDI ENC lookups on the types available in EJB 1.1 (needs to be
updated for EJB3 also).
http://svn.apache.org/repos/asf/incubator/openejb/trunk/openejb3/
itests/openejb-itests-beans/src/main/java/org/apache/openejb/test/
stateless/EncStatelessBean.java
http://svn.apache.org/repos/asf/incubator/openejb/trunk/openejb3/
itests/openejb-itests-client/src/main/java/org/apache/openejb/test/
stateless/StatelessJndiEncTests.java
This may or may not be useful as a launching pad for the new tests.
We don't have to follow that style and we very well may want to
rewrite that test to follow the style of the new tests if it turns
out to be different.
-David
> Thanks
> Manu
>
> On 11/20/06, David Blevins <da...@visi.com> wrote:
>> On Nov 20, 2006, at 1:48 AM, Manu George wrote:
>>
>> > Hi David,
>> > Have you created the beans that we are going to test
>> > annotations? If not shall I go ahead and create the beans as
>> extending
>> > from the current test beans. I plan to create the session beans
>> > required for testing the annotations you have implemented.
>>
>> Go for it!
>>
>> You can throw everything into an itests/openejb-itests-annotated-
>> beans/ module.
>>
>> Note sure just yet how we'll wire it in to run with the other tests.
>> If you have any ideas, I'm all ears.
>>
>> -David
>>
>>
>>
>>
>
Re: Regarding testing annotated beans
Posted by Jacek Laskowski <ja...@laskowski.net.pl>.
On 11/23/06, Manu George <ma...@gmail.com> wrote:
> Hi Jacek :-)
>
> Sorry abt that :-). I put hi David, Mohammad for atleast any of those
> two people to respond. If I just put Hi, no one will fell obligated to
> respond. If I put Hi Jacek probably I will be putting another mail to
> clutter your busy day in which you may not be interested :-). But from
> now on I will definitely put Hi Jacek for all my mails :-). You have
> been very helpful in the past and your help is gratefully accepted by
> me. Let me say Thanks For Your Help Jacek
That's much better ;-)
Jacek
--
Jacek Laskowski
http://www.jaceklaskowski.pl
Re: Regarding testing annotated beans
Posted by Manu George <ma...@gmail.com>.
Hi Jacek :-)
Sorry abt that :-). I put hi David, Mohammad for atleast any of those
two people to respond. If I just put Hi, no one will fell obligated to
respond. If I put Hi Jacek probably I will be putting another mail to
clutter your busy day in which you may not be interested :-). But from
now on I will definitely put Hi Jacek for all my mails :-). You have
been very helpful in the past and your help is gratefully accepted by
me. Let me say Thanks For Your Help Jacek
Regards
Manu
On 11/23/06, Jacek Laskowski <ja...@laskowski.net.pl> wrote:
> On 11/23/06, Manu George <ma...@gmail.com> wrote:
> > Hi David/Mohammad,
> ...
> > Better ideas,improvements and comments are welcome from anyone.
>
> Yeah, "from anyone". Firstly, the email started with "Hi
> David/Mohammad" and when you're in trouble you're asking for help
> "from anyone". No way! ;-)
>
> Jacek
>
> --
> Jacek Laskowski
> http://www.jaceklaskowski.pl
>
Re: Regarding testing annotated beans
Posted by Jacek Laskowski <ja...@laskowski.net.pl>.
On 11/23/06, Manu George <ma...@gmail.com> wrote:
> Hi David/Mohammad,
...
> Better ideas,improvements and comments are welcome from anyone.
Yeah, "from anyone". Firstly, the email started with "Hi
David/Mohammad" and when you're in trouble you're asking for help
"from anyone". No way! ;-)
Jacek
--
Jacek Laskowski
http://www.jaceklaskowski.pl
Re: Regarding testing annotated beans
Posted by Manu George <ma...@gmail.com>.
Hi David/Mohammad,
What I was planning was to add annotated beans for each of the
corressponding beans deployed using the deployment descriptor. Then
execute all the test cases existing for the dd deployed beans for the
annotated beans as well. In addition to this we need to create new
test cases for checking the overrides as well as the defaults(i.e.
beans with the very minimum annotations. The unpecified config
attributes should be substituted by defaults).
I was thinking that if we can deploy the annotated ejbs with
the same name as the dd based ones we can execute the existing tests
as well. We will have the beans and remote interfaces extending from
the existing ones as well.
I plan to implement this by creating two new TestSuites
corressponding to iTest and RemoteiTest namely AnnotatediTest and
AnnotatedRemoteiTest. In iTest and RemoteiTest I will add the
following system property
System.setProperty("openejb.deployments.classpath.exclude",
".*openejb-itests-annotated-beans.*");
This will prevent openejb from loading the descriptors in that
directory and so the annotated beans.Similarly if I set the property
to .*openejb-itests-beans.* in AnnotatediTests suite then the dd based
beans won't be deployed. This will minimize the tests we need to write
for annotated beans. One issue I am not sure of here is even though we
will have annotated business interfaces in the jar deployed in server
the existing tests will use the parent interfaces only so we may need
to create some tests with annotated interfaces used at client side.
Now I may have been missing something when i came up with
this approach and so it may not work. So I am looking for your
comments poiniting out the issues with this approach. Better
ideas,improvements and comments are welcome from anyone.
Thanks
Manu
On 11/20/06, David Blevins <da...@visi.com> wrote:
> On Nov 20, 2006, at 1:48 AM, Manu George wrote:
>
> > Hi David,
> > Have you created the beans that we are going to test
> > annotations? If not shall I go ahead and create the beans as extending
> > from the current test beans. I plan to create the session beans
> > required for testing the annotations you have implemented.
>
> Go for it!
>
> You can throw everything into an itests/openejb-itests-annotated-
> beans/ module.
>
> Note sure just yet how we'll wire it in to run with the other tests.
> If you have any ideas, I'm all ears.
>
> -David
>
>
>
>
Re: Regarding testing annotated beans
Posted by David Blevins <da...@visi.com>.
On Nov 20, 2006, at 1:48 AM, Manu George wrote:
> Hi David,
> Have you created the beans that we are going to test
> annotations? If not shall I go ahead and create the beans as extending
> from the current test beans. I plan to create the session beans
> required for testing the annotations you have implemented.
Go for it!
You can throw everything into an itests/openejb-itests-annotated-
beans/ module.
Note sure just yet how we'll wire it in to run with the other tests.
If you have any ideas, I'm all ears.
-David