You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@geronimo.apache.org by Prasad Kashyap <go...@gmail.com> on 2007/01/20 18:52:51 UTC

Unable to deploy an EJB3.0 sample app

I have created a sample application out of the
calculator-stateless-pojo example in OpenEJB 3.0

It is checked in here -
http://svn.apache.org/viewvc/geronimo/samples/trunk/calculator-stateless-pojo/

The app tries to demonstrate dependency injection of the bean into a
servlet and obviates the need for the deployment-descriptor.

But I learnt from David Blevins that while the app may not need a DD,
geronimo doesn't yet support ear archives with no ejb-jar.xml. It
doesn't know to give them to openejb. Hence under his guidance I put a
dummy ejb-jar.xml and a minimum geronimo-web.xml.

When I try to deploy this app, it fails with the following error:

   Error: Unable to distribute calculator-stateless-ear-2.0-SNAPSHOT.ear:
   Module was not an EJB: calculator-stateless-ejb-2.0-SNAPSHOT.jar

Am I missing anything else here ? Can someone please help ?


Thanx in advance
Prasad

Re: Unable to deploy an EJB3.0 sample app

Posted by David Blevins <da...@visi.com>.
On Jan 21, 2007, at 1:03 PM, Prasad Kashyap wrote:

> I was able to deploy the app successfully but only after using an
> openejb-jar.xml.
>
> Dain & Blevins,
> On the irc discussion on Sat, 01/20, we thought that an
> openejb-jar.xml is not mandatory. I debugged the builder and realized
> the contrary.
>
> In the EJBModuleBuilder.java, it doesn't check to see if the
> openejb-jar.xml is null or not.
> String openejbJarXml = XmlUtil.loadOpenejbJarXml(object, moduleFile);
> OpenejbJar openejbJar = XmlUtil.unmarshal(OpenejbJar.class,  
> openejbJarXml);
>
> http://svn.apache.org/viewvc/geronimo/server/trunk/modules/geronimo- 
> openejb-builder/src/main/java/org/apache/geronimo/openejb/ 
> deployment/EjbModuleBuilder.java?view=log
>
> Should this be fixed ? Or is the openejb-jar.xml mandatory ?

Nope, that should be fixed and very good work tracking this down.  Do  
you want the honors of adding this fix?

-David

>
> Cheers
> Prasad
>
> On 1/20/07, Prasad Kashyap <go...@gmail.com> wrote:
>> I have created a sample application out of the
>> calculator-stateless-pojo example in OpenEJB 3.0
>>
>> It is checked in here -
>> http://svn.apache.org/viewvc/geronimo/samples/trunk/calculator- 
>> stateless-pojo/
>>
>> The app tries to demonstrate dependency injection of the bean into a
>> servlet and obviates the need for the deployment-descriptor.
>>
>> But I learnt from David Blevins that while the app may not need a DD,
>> geronimo doesn't yet support ear archives with no ejb-jar.xml. It
>> doesn't know to give them to openejb. Hence under his guidance I  
>> put a
>> dummy ejb-jar.xml and a minimum geronimo-web.xml.
>>
>> When I try to deploy this app, it fails with the following error:
>>
>>    Error: Unable to distribute calculator-stateless-ear-2.0- 
>> SNAPSHOT.ear:
>>    Module was not an EJB: calculator-stateless-ejb-2.0-SNAPSHOT.jar
>>
>> Am I missing anything else here ? Can someone please help ?
>>
>>
>> Thanx in advance
>> Prasad
>>
>


Re: Unable to deploy an EJB3.0 sample app -- Thank you Prasad

Posted by Sachin Patel <sp...@gmail.com>.
Woops... responded just now to the wrong thread...

Ok, one other item we don't support is an ear with an ejbjar, with no  
application.xml, nor an ejb-jar.xml.  The EARConfigBuilder needs to  
inspect classes for any ejb related annotations in order to classify  
it as an ejbjar.  Same goes for other modules contained in an ear  
with no module or application dd.

However, we can't check for module specific annotations in the  
EARConfigBuilder, so do we need to consider adding a new method to  
the ModuleBuilder interface (ex. isModule(JarFile)) so that the  
individual builders can check for specific annotations and have  
something abstract that the EARConfigBuilder can invoke?


On Jan 23, 2007, at 11:52 AM, Prasad Kashyap wrote:

> On 1/22/07, David Blevins <da...@visi.com> wrote:
>> Ok.  All of these issues should be fixed.
>
> I did a complete clean Geronimo (& OpenEJB) build. I am still having
> issues here -
>
> 1) http://issues.apache.org/jira/browse/GERONIMO-2770.
> An ejb-module with a missing ejb-jar.xml will not be recognized and  
> deployed.
>
>
> 2) http://issues.apache.org/jira/browse/OPENEJB-452
> An ejb-module with a missing openejb-jar.xml will throw an NPE
>
> 11:40:53, 611 WARN [OPENEJB] Auto-deploying ejb Calculator:
> EjbDeployment (deployment-id=Calculator, container-id=Default
> Stateless Container)
> 11:40:58, 068 ERROR [Deployer] Deployment failed due to
> java.lang.NullPointerException
>        at
>     
> org.apache.geronimo.openejb.deployment.EjbDeploymentBuilder.initContex 
> t(EjbD
> eploymentBuilder.java:107)
>        at
>     
> org.apache.geronimo.openejb.deployment.EjbModuleBuilder.initContext 
> (EjbModul
> eBuilder.java:381)
>
>
> Since the NPE position has now changed, I believe I have the latest
> code in the server.
>
>
> Cheers
> Prasad
>
>
>>
>> -David
>>
>> On Jan 22, 2007, at 4:46 PM, David Blevins wrote:
>>
>> >
>> > On Jan 21, 2007, at 1:03 PM, Prasad Kashyap wrote:
>> >> I was able to deploy the app successfully but only after using an
>> >> openejb-jar.xml.
>> >>
>> >> Dain & Blevins,
>> >> On the irc discussion on Sat, 01/20, we thought that an
>> >> openejb-jar.xml is not mandatory. I debugged the builder and  
>> realized
>> >> the contrary.
>> >>
>> >> In the EJBModuleBuilder.java, it doesn't check to see if the
>> >> openejb-jar.xml is null or not.
>> >> String openejbJarXml = XmlUtil.loadOpenejbJarXml(object,  
>> moduleFile);
>> >> OpenejbJar openejbJar = XmlUtil.unmarshal(OpenejbJar.class,
>> >> openejbJarXml);
>> >>
>> >> http://svn.apache.org/viewvc/geronimo/server/trunk/modules/
>> >> geronimo-openejb-builder/src/main/java/org/apache/geronimo/ 
>> openejb/
>> >> deployment/EjbModuleBuilder.java?view=log
>> >
>> > On Jan 22, 2007, at 8:56 AM, Prasad Kashyap wrote:
>> >> Jarek,
>> >>
>> >> I had the same error.
>> >>
>> >> Try something like the following in your openejb-jar.xml
>> >>
>> >> <openejb-jar xmlns="http://www.openejb.org/openejb-jar/1.1">
>> >> <ejb-deployment ejb-name="Calculator"
>> >>                  deployment-id="samples/calculator/stateless/
>> >> CalculatorLocal"
>> >>                  container-id="Default Stateless Container"/>
>> >> </openejb-jar>
>> >
>> > First, a very big thank you to Prasad for really digging in this
>> > weekend helping to find things that needed to be fixed.  All
>> > because if his input I was able to find what I think are the the
>> > last remaining gotchas in the EJB deployment system.  I've tried to
>> > file jiras for everything, so here goes:
>> >
>> > The first issue he discovered is with deploying an ejb app with no
>> > ejb-jar.xml. Geronimo needs that file to determine it's an ejb app,
>> > so at least an empty one is required to make deployment work.
>> > Here's the jira for that:
>> >    http://issues.apache.org/jira/browse/GERONIMO-2770
>> >
>> > So to fix that I need to see if there are any annotated beans in
>> > the jar, which will be hard to do as there is no classloader
>> > available in the 'createModule' section of the Geronimo deployment
>> > system.  I racked my brain for a bit and think with a little work
>> > to my xbean-finder ClassFinder I can do the required sniffing with
>> > no classloader as it's all ASM-based.  I just need to add a couple
>> > methods to report that data.  I've filed a jira for that as well:
>> >    http://issues.apache.org/jira/browse/XBEAN-70
>> >
>> > The second issue that Prasad found is that you have to had to have
>> > an openejb-jar element in your geronimo-openejb.xml or the
>> > EjbModuleBuilder will fail with a null pointer.  This is the issue
>> > he posted above.  Dain as already fixed that issue and now you can
>> > have an empty openejb-jar element in your geronimo-openejb.xml.
>> >
>> > But I was still surprised about one thing (issue number three).
>> > Even having an empty openejb-jar, which is something he tried,
>> > *should* work.  So I dug a bit more in the code on the openejb side
>> > and found that the logic goes "if you have an openejb-jar, use it.
>> > If you don't have one, create it automatically."  I.e. so adding
>> > the empty openejb-jar element effectively shut off the auto deploy
>> > functionality.  We do have the code that can augment an existing
>> > openejb-jar and add missing definitions automatically, so I've
>> > created an issue for that one as well.
>> >   http://issues.apache.org/jira/browse/OPENEJB-452
>> >
>> > Hope to get these fixed in a couple hours.  Big thank you to Prasad
>> > for playing detective and finding *all* of these issues.  Rather
>> > than stopping at the first one, he kept going all the way to the
>> > end and did what it took to get something working.  Very
>> > appreciated and very big time saver for me at least as I spent the
>> > weekend working on the conversion tool and wouldn't have been able
>> > to do that without all his work on this.
>> >
>> > Nice Job, Prasad!
>> >
>> > -David
>> >
>> >
>> >
>> >
>> >
>> >
>> >
>>
>>


-sachin



Re: Unable to deploy an EJB3.0 sample app -- Thank you Prasad

Posted by Sachin Patel <sp...@gmail.com>.
You're right, I forgot about the naming conventions.  So if you take  
a look at the //TODO I put on line 778 of EARConfigBuilder, we'll  
still have to call to inspect the ejbjar candidate.  As far as the  
library support, I added it a while back see EARConfigBuilder line  
500.  "lib" is used if the libraryDirectory element is not specified.

As far as

On Jan 24, 2007, at 8:40 PM, Dain Sundstrom wrote:

> Only ejb modules are identified by scanning for annotations.  IIRC  
> from the jee5 spec the following rules are used to identify modules:
>
> Web - filenames ends with .war
> Connector - filename ends with .rar
> Persistence - contains META-INF/persistence.xml
> EJB - scan for EJB annotations
> AppClient - does not contain EJB annotations, and has a Main-Class  
> declared in the manifest
> Library - none of the above, and in the proper location in the ear  
> (don't remember the list)
>
> As you can see, only EJB modules are scanned the rest have very  
> simple rules and cheap rules.
>
> -dain
>
> On Jan 24, 2007, at 1:24 PM, Sachin Patel wrote:
>
>> As I mentioned before, what I think needs to be done is rename  
>> EjbConfigBuilder.isEjbAnnotatedModule() to isAnnotatedModule 
>> (JarFile jar) and introduce this in the ModuleBuilder interface  
>> since the other ModuleBuilders will need to implement it.   
>> EARConfigBuilder can then invoke the method through the interface  
>> on each of the ModuleBuilder's to identify the module type.
>>
>> If there are no objections to this doing it this way, I'll take  
>> care of it.
>>
>> On Jan 24, 2007, at 4:16 PM, Sachin Patel wrote:
>>
>>> No I mean an ear with no applicaiton.xml and the ear contains a  
>>> ejbjar, with no ejb-jar.xml
>>>
>>> On Jan 24, 2007, at 4:06 PM, Prasad Kashyap wrote:
>>>
>>>> You mean geronimo-openejb free deploy.
>>>>
>>>> The latest revisions do support ejb-jar.xml free deployments
>>>>
>>>> Cheers
>>>> Prasad
>>>>
>>>> On 1/24/07, Sachin Patel <sp...@gmail.com> wrote:
>>>>> but not yet a ejb-jar.xml & application.xml free deploy
>>>>>
>>>>>
>>>>> On Jan 23, 2007, at 9:54 PM, Prasad Kashyap wrote:
>>>>>
>>>>>
>>>>> We can now have a ejb-jar.xml free deployment and openejb- 
>>>>> jar.xml free
>>>>>
>>>>> deployment.
>>>>>
>>>>> -sachin
>>>>>
>>>>>
>>>
>>>
>>> -sachin
>>>
>>>
>>
>>
>> -sachin
>>
>>
>


-sachin



Re: Unable to deploy an EJB3.0 sample app -- Thank you Prasad

Posted by Dain Sundstrom <da...@iq80.com>.
Only ejb modules are identified by scanning for annotations.  IIRC  
from the jee5 spec the following rules are used to identify modules:

Web - filenames ends with .war
Connector - filename ends with .rar
Persistence - contains META-INF/persistence.xml
EJB - scan for EJB annotations
AppClient - does not contain EJB annotations, and has a Main-Class  
declared in the manifest
Library - none of the above, and in the proper location in the ear  
(don't remember the list)

As you can see, only EJB modules are scanned the rest have very  
simple rules and cheap rules.

-dain

On Jan 24, 2007, at 1:24 PM, Sachin Patel wrote:

> As I mentioned before, what I think needs to be done is rename  
> EjbConfigBuilder.isEjbAnnotatedModule() to isAnnotatedModule 
> (JarFile jar) and introduce this in the ModuleBuilder interface  
> since the other ModuleBuilders will need to implement it.   
> EARConfigBuilder can then invoke the method through the interface  
> on each of the ModuleBuilder's to identify the module type.
>
> If there are no objections to this doing it this way, I'll take  
> care of it.
>
> On Jan 24, 2007, at 4:16 PM, Sachin Patel wrote:
>
>> No I mean an ear with no applicaiton.xml and the ear contains a  
>> ejbjar, with no ejb-jar.xml
>>
>> On Jan 24, 2007, at 4:06 PM, Prasad Kashyap wrote:
>>
>>> You mean geronimo-openejb free deploy.
>>>
>>> The latest revisions do support ejb-jar.xml free deployments
>>>
>>> Cheers
>>> Prasad
>>>
>>> On 1/24/07, Sachin Patel <sp...@gmail.com> wrote:
>>>> but not yet a ejb-jar.xml & application.xml free deploy
>>>>
>>>>
>>>> On Jan 23, 2007, at 9:54 PM, Prasad Kashyap wrote:
>>>>
>>>>
>>>> We can now have a ejb-jar.xml free deployment and openejb- 
>>>> jar.xml free
>>>>
>>>> deployment.
>>>>
>>>> -sachin
>>>>
>>>>
>>
>>
>> -sachin
>>
>>
>
>
> -sachin
>
>


Re: Unable to deploy an EJB3.0 sample app -- Thank you Prasad

Posted by Sachin Patel <sp...@gmail.com>.
As I mentioned before, what I think needs to be done is rename  
EjbConfigBuilder.isEjbAnnotatedModule() to isAnnotatedModule(JarFile  
jar) and introduce this in the ModuleBuilder interface since the  
other ModuleBuilders will need to implement it.  EARConfigBuilder can  
then invoke the method through the interface on each of the  
ModuleBuilder's to identify the module type.

If there are no objections to this doing it this way, I'll take care  
of it.

On Jan 24, 2007, at 4:16 PM, Sachin Patel wrote:

> No I mean an ear with no applicaiton.xml and the ear contains a  
> ejbjar, with no ejb-jar.xml
>
> On Jan 24, 2007, at 4:06 PM, Prasad Kashyap wrote:
>
>> You mean geronimo-openejb free deploy.
>>
>> The latest revisions do support ejb-jar.xml free deployments
>>
>> Cheers
>> Prasad
>>
>> On 1/24/07, Sachin Patel <sp...@gmail.com> wrote:
>>> but not yet a ejb-jar.xml & application.xml free deploy
>>>
>>>
>>> On Jan 23, 2007, at 9:54 PM, Prasad Kashyap wrote:
>>>
>>>
>>> We can now have a ejb-jar.xml free deployment and openejb-jar.xml  
>>> free
>>>
>>> deployment.
>>>
>>> -sachin
>>>
>>>
>
>
> -sachin
>
>


-sachin



Re: Unable to deploy an EJB3.0 sample app -- Thank you Prasad

Posted by Sachin Patel <sp...@gmail.com>.
No I mean an ear with no applicaiton.xml and the ear contains a  
ejbjar, with no ejb-jar.xml

On Jan 24, 2007, at 4:06 PM, Prasad Kashyap wrote:

> You mean geronimo-openejb free deploy.
>
> The latest revisions do support ejb-jar.xml free deployments
>
> Cheers
> Prasad
>
> On 1/24/07, Sachin Patel <sp...@gmail.com> wrote:
>> but not yet a ejb-jar.xml & application.xml free deploy
>>
>>
>> On Jan 23, 2007, at 9:54 PM, Prasad Kashyap wrote:
>>
>>
>> We can now have a ejb-jar.xml free deployment and openejb-jar.xml  
>> free
>>
>> deployment.
>>
>> -sachin
>>
>>


-sachin



Re: Unable to deploy an EJB3.0 sample app -- Thank you Prasad

Posted by Prasad Kashyap <go...@gmail.com>.
You mean geronimo-openejb free deploy.

The latest revisions do support ejb-jar.xml free deployments

Cheers
Prasad

On 1/24/07, Sachin Patel <sp...@gmail.com> wrote:
> but not yet a ejb-jar.xml & application.xml free deploy
>
>
> On Jan 23, 2007, at 9:54 PM, Prasad Kashyap wrote:
>
>
> We can now have a ejb-jar.xml free deployment and openejb-jar.xml free
>
> deployment.
>
> -sachin
>
>

Re: Unable to deploy an EJB3.0 sample app -- Thank you Prasad

Posted by Sachin Patel <sp...@gmail.com>.
but not yet a ejb-jar.xml & application.xml free deploy

On Jan 23, 2007, at 9:54 PM, Prasad Kashyap wrote:

> We can now have a ejb-jar.xml free deployment and openejb-jar.xml free
> deployment.


-sachin



Re: Unable to deploy an EJB3.0 sample app -- Thank you Prasad

Posted by Prasad Kashyap <go...@gmail.com>.
For those interested and following this thread (D Jencks had a similar
NPE), both these issues are now resolved.

We can now have a ejb-jar.xml free deployment and openejb-jar.xml free
deployment.

Cheers
Prasad

On 1/23/07, Prasad Kashyap <go...@gmail.com> wrote:
> On 1/22/07, David Blevins <da...@visi.com> wrote:
> > Ok.  All of these issues should be fixed.
>
> I did a complete clean Geronimo (& OpenEJB) build. I am still having
> issues here -
>
> 1) http://issues.apache.org/jira/browse/GERONIMO-2770.
> An ejb-module with a missing ejb-jar.xml will not be recognized and deployed.
>
>
> 2) http://issues.apache.org/jira/browse/OPENEJB-452
> An ejb-module with a missing openejb-jar.xml will throw an NPE
>
> 11:40:53, 611 WARN [OPENEJB] Auto-deploying ejb Calculator:
> EjbDeployment (deployment-id=Calculator, container-id=Default
> Stateless Container)
> 11:40:58, 068 ERROR [Deployer] Deployment failed due to
> java.lang.NullPointerException
>         at
>     org.apache.geronimo.openejb.deployment.EjbDeploymentBuilder.initContext(EjbD
> eploymentBuilder.java:107)
>         at
>     org.apache.geronimo.openejb.deployment.EjbModuleBuilder.initContext(EjbModul
> eBuilder.java:381)
>
>
> Since the NPE position has now changed, I believe I have the latest
> code in the server.
>
>
> Cheers
> Prasad
>
>
> >
> > -David
> >
> > On Jan 22, 2007, at 4:46 PM, David Blevins wrote:
> >
> > >
> > > On Jan 21, 2007, at 1:03 PM, Prasad Kashyap wrote:
> > >> I was able to deploy the app successfully but only after using an
> > >> openejb-jar.xml.
> > >>
> > >> Dain & Blevins,
> > >> On the irc discussion on Sat, 01/20, we thought that an
> > >> openejb-jar.xml is not mandatory. I debugged the builder and realized
> > >> the contrary.
> > >>
> > >> In the EJBModuleBuilder.java, it doesn't check to see if the
> > >> openejb-jar.xml is null or not.
> > >> String openejbJarXml = XmlUtil.loadOpenejbJarXml(object, moduleFile);
> > >> OpenejbJar openejbJar = XmlUtil.unmarshal(OpenejbJar.class,
> > >> openejbJarXml);
> > >>
> > >> http://svn.apache.org/viewvc/geronimo/server/trunk/modules/
> > >> geronimo-openejb-builder/src/main/java/org/apache/geronimo/openejb/
> > >> deployment/EjbModuleBuilder.java?view=log
> > >
> > > On Jan 22, 2007, at 8:56 AM, Prasad Kashyap wrote:
> > >> Jarek,
> > >>
> > >> I had the same error.
> > >>
> > >> Try something like the following in your openejb-jar.xml
> > >>
> > >> <openejb-jar xmlns="http://www.openejb.org/openejb-jar/1.1">
> > >> <ejb-deployment ejb-name="Calculator"
> > >>                  deployment-id="samples/calculator/stateless/
> > >> CalculatorLocal"
> > >>                  container-id="Default Stateless Container"/>
> > >> </openejb-jar>
> > >
> > > First, a very big thank you to Prasad for really digging in this
> > > weekend helping to find things that needed to be fixed.  All
> > > because if his input I was able to find what I think are the the
> > > last remaining gotchas in the EJB deployment system.  I've tried to
> > > file jiras for everything, so here goes:
> > >
> > > The first issue he discovered is with deploying an ejb app with no
> > > ejb-jar.xml. Geronimo needs that file to determine it's an ejb app,
> > > so at least an empty one is required to make deployment work.
> > > Here's the jira for that:
> > >    http://issues.apache.org/jira/browse/GERONIMO-2770
> > >
> > > So to fix that I need to see if there are any annotated beans in
> > > the jar, which will be hard to do as there is no classloader
> > > available in the 'createModule' section of the Geronimo deployment
> > > system.  I racked my brain for a bit and think with a little work
> > > to my xbean-finder ClassFinder I can do the required sniffing with
> > > no classloader as it's all ASM-based.  I just need to add a couple
> > > methods to report that data.  I've filed a jira for that as well:
> > >    http://issues.apache.org/jira/browse/XBEAN-70
> > >
> > > The second issue that Prasad found is that you have to had to have
> > > an openejb-jar element in your geronimo-openejb.xml or the
> > > EjbModuleBuilder will fail with a null pointer.  This is the issue
> > > he posted above.  Dain as already fixed that issue and now you can
> > > have an empty openejb-jar element in your geronimo-openejb.xml.
> > >
> > > But I was still surprised about one thing (issue number three).
> > > Even having an empty openejb-jar, which is something he tried,
> > > *should* work.  So I dug a bit more in the code on the openejb side
> > > and found that the logic goes "if you have an openejb-jar, use it.
> > > If you don't have one, create it automatically."  I.e. so adding
> > > the empty openejb-jar element effectively shut off the auto deploy
> > > functionality.  We do have the code that can augment an existing
> > > openejb-jar and add missing definitions automatically, so I've
> > > created an issue for that one as well.
> > >   http://issues.apache.org/jira/browse/OPENEJB-452
> > >
> > > Hope to get these fixed in a couple hours.  Big thank you to Prasad
> > > for playing detective and finding *all* of these issues.  Rather
> > > than stopping at the first one, he kept going all the way to the
> > > end and did what it took to get something working.  Very
> > > appreciated and very big time saver for me at least as I spent the
> > > weekend working on the conversion tool and wouldn't have been able
> > > to do that without all his work on this.
> > >
> > > Nice Job, Prasad!
> > >
> > > -David
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> >
> >
>

Re: Unable to deploy an EJB3.0 sample app -- Thank you Prasad

Posted by Prasad Kashyap <go...@gmail.com>.
On 1/22/07, David Blevins <da...@visi.com> wrote:
> Ok.  All of these issues should be fixed.

I did a complete clean Geronimo (& OpenEJB) build. I am still having
issues here -

1) http://issues.apache.org/jira/browse/GERONIMO-2770.
An ejb-module with a missing ejb-jar.xml will not be recognized and deployed.


2) http://issues.apache.org/jira/browse/OPENEJB-452
An ejb-module with a missing openejb-jar.xml will throw an NPE

11:40:53, 611 WARN [OPENEJB] Auto-deploying ejb Calculator:
EjbDeployment (deployment-id=Calculator, container-id=Default
Stateless Container)
11:40:58, 068 ERROR [Deployer] Deployment failed due to
java.lang.NullPointerException
        at
    org.apache.geronimo.openejb.deployment.EjbDeploymentBuilder.initContext(EjbD
eploymentBuilder.java:107)
        at
    org.apache.geronimo.openejb.deployment.EjbModuleBuilder.initContext(EjbModul
eBuilder.java:381)


Since the NPE position has now changed, I believe I have the latest
code in the server.


Cheers
Prasad


>
> -David
>
> On Jan 22, 2007, at 4:46 PM, David Blevins wrote:
>
> >
> > On Jan 21, 2007, at 1:03 PM, Prasad Kashyap wrote:
> >> I was able to deploy the app successfully but only after using an
> >> openejb-jar.xml.
> >>
> >> Dain & Blevins,
> >> On the irc discussion on Sat, 01/20, we thought that an
> >> openejb-jar.xml is not mandatory. I debugged the builder and realized
> >> the contrary.
> >>
> >> In the EJBModuleBuilder.java, it doesn't check to see if the
> >> openejb-jar.xml is null or not.
> >> String openejbJarXml = XmlUtil.loadOpenejbJarXml(object, moduleFile);
> >> OpenejbJar openejbJar = XmlUtil.unmarshal(OpenejbJar.class,
> >> openejbJarXml);
> >>
> >> http://svn.apache.org/viewvc/geronimo/server/trunk/modules/
> >> geronimo-openejb-builder/src/main/java/org/apache/geronimo/openejb/
> >> deployment/EjbModuleBuilder.java?view=log
> >
> > On Jan 22, 2007, at 8:56 AM, Prasad Kashyap wrote:
> >> Jarek,
> >>
> >> I had the same error.
> >>
> >> Try something like the following in your openejb-jar.xml
> >>
> >> <openejb-jar xmlns="http://www.openejb.org/openejb-jar/1.1">
> >> <ejb-deployment ejb-name="Calculator"
> >>                  deployment-id="samples/calculator/stateless/
> >> CalculatorLocal"
> >>                  container-id="Default Stateless Container"/>
> >> </openejb-jar>
> >
> > First, a very big thank you to Prasad for really digging in this
> > weekend helping to find things that needed to be fixed.  All
> > because if his input I was able to find what I think are the the
> > last remaining gotchas in the EJB deployment system.  I've tried to
> > file jiras for everything, so here goes:
> >
> > The first issue he discovered is with deploying an ejb app with no
> > ejb-jar.xml. Geronimo needs that file to determine it's an ejb app,
> > so at least an empty one is required to make deployment work.
> > Here's the jira for that:
> >    http://issues.apache.org/jira/browse/GERONIMO-2770
> >
> > So to fix that I need to see if there are any annotated beans in
> > the jar, which will be hard to do as there is no classloader
> > available in the 'createModule' section of the Geronimo deployment
> > system.  I racked my brain for a bit and think with a little work
> > to my xbean-finder ClassFinder I can do the required sniffing with
> > no classloader as it's all ASM-based.  I just need to add a couple
> > methods to report that data.  I've filed a jira for that as well:
> >    http://issues.apache.org/jira/browse/XBEAN-70
> >
> > The second issue that Prasad found is that you have to had to have
> > an openejb-jar element in your geronimo-openejb.xml or the
> > EjbModuleBuilder will fail with a null pointer.  This is the issue
> > he posted above.  Dain as already fixed that issue and now you can
> > have an empty openejb-jar element in your geronimo-openejb.xml.
> >
> > But I was still surprised about one thing (issue number three).
> > Even having an empty openejb-jar, which is something he tried,
> > *should* work.  So I dug a bit more in the code on the openejb side
> > and found that the logic goes "if you have an openejb-jar, use it.
> > If you don't have one, create it automatically."  I.e. so adding
> > the empty openejb-jar element effectively shut off the auto deploy
> > functionality.  We do have the code that can augment an existing
> > openejb-jar and add missing definitions automatically, so I've
> > created an issue for that one as well.
> >   http://issues.apache.org/jira/browse/OPENEJB-452
> >
> > Hope to get these fixed in a couple hours.  Big thank you to Prasad
> > for playing detective and finding *all* of these issues.  Rather
> > than stopping at the first one, he kept going all the way to the
> > end and did what it took to get something working.  Very
> > appreciated and very big time saver for me at least as I spent the
> > weekend working on the conversion tool and wouldn't have been able
> > to do that without all his work on this.
> >
> > Nice Job, Prasad!
> >
> > -David
> >
> >
> >
> >
> >
> >
> >
>
>

Re: Unable to deploy an EJB3.0 sample app

Posted by David Blevins <da...@visi.com>.
David J. found a couple issues with the latest changes, both have  
been fixed.  Posting in case you ran into these.

One was a null pointer caused during deployment:

[WARNING] Caused by: java.lang.NullPointerException
[WARNING]       at org.apache.xbean.finder.ClassFinder.readClassDef 
(ClassFinder.java:681)
[WARNING]       at org.apache.xbean.finder.ClassFinder.<init> 
(ClassFinder.java:141)
[WARNING]       at org.apache.xbean.finder.ClassFinder.<init> 
(ClassFinder.java:113)
[WARNING]       at  
org.apache.geronimo.openejb.deployment.EjbModuleBuilder.createModule 
(EjbModuleBuilder.java:153)
[WARNING]       at  
org.apache.geronimo.openejb.deployment.EjbModuleBuilder.createModule 
(EjbModuleBuilder.java:129)

The other was an issue with the containers created via the openejb  
plan not getting recognized in the system:

org.apache.geronimo.common.DeploymentException:  
org.apache.openejb.OpenEJBException: A container of type STATELESS  
must be declared in the configuration file for bean: MyStatelessBean
     at  
org.apache.geronimo.openejb.deployment.EjbModuleBuilder.initContext 
(EjbModuleBuilder.java:325)
     at org.apache.geronimo.openejb.deployment.EjbModuleBuilder$ 
$FastClassByCGLIB$$cd80af20.invoke(<generated>)


-David

On Jan 22, 2007, at 6:55 PM, David Blevins wrote:

> Ok.  All of these issues should be fixed.
>
> -David
>
> On Jan 22, 2007, at 4:46 PM, David Blevins wrote:
>
>>
>> On Jan 21, 2007, at 1:03 PM, Prasad Kashyap wrote:
>>> I was able to deploy the app successfully but only after using an
>>> openejb-jar.xml.
>>>
>>> Dain & Blevins,
>>> On the irc discussion on Sat, 01/20, we thought that an
>>> openejb-jar.xml is not mandatory. I debugged the builder and  
>>> realized
>>> the contrary.
>>>
>>> In the EJBModuleBuilder.java, it doesn't check to see if the
>>> openejb-jar.xml is null or not.
>>> String openejbJarXml = XmlUtil.loadOpenejbJarXml(object,  
>>> moduleFile);
>>> OpenejbJar openejbJar = XmlUtil.unmarshal(OpenejbJar.class,  
>>> openejbJarXml);
>>>
>>> http://svn.apache.org/viewvc/geronimo/server/trunk/modules/ 
>>> geronimo-openejb-builder/src/main/java/org/apache/geronimo/ 
>>> openejb/deployment/EjbModuleBuilder.java?view=log
>>
>> On Jan 22, 2007, at 8:56 AM, Prasad Kashyap wrote:
>>> Jarek,
>>>
>>> I had the same error.
>>>
>>> Try something like the following in your openejb-jar.xml
>>>
>>> <openejb-jar xmlns="http://www.openejb.org/openejb-jar/1.1">
>>> <ejb-deployment ejb-name="Calculator"
>>>                  deployment-id="samples/calculator/stateless/ 
>>> CalculatorLocal"
>>>                  container-id="Default Stateless Container"/>
>>> </openejb-jar>
>>
>> First, a very big thank you to Prasad for really digging in this  
>> weekend helping to find things that needed to be fixed.  All  
>> because if his input I was able to find what I think are the the  
>> last remaining gotchas in the EJB deployment system.  I've tried  
>> to file jiras for everything, so here goes:
>>
>> The first issue he discovered is with deploying an ejb app with no  
>> ejb-jar.xml. Geronimo needs that file to determine it's an ejb  
>> app, so at least an empty one is required to make deployment  
>> work.  Here's the jira for that:
>>    http://issues.apache.org/jira/browse/GERONIMO-2770
>>
>> So to fix that I need to see if there are any annotated beans in  
>> the jar, which will be hard to do as there is no classloader  
>> available in the 'createModule' section of the Geronimo deployment  
>> system.  I racked my brain for a bit and think with a little work  
>> to my xbean-finder ClassFinder I can do the required sniffing with  
>> no classloader as it's all ASM-based.  I just need to add a couple  
>> methods to report that data.  I've filed a jira for that as well:
>>    http://issues.apache.org/jira/browse/XBEAN-70
>>
>> The second issue that Prasad found is that you have to had to have  
>> an openejb-jar element in your geronimo-openejb.xml or the  
>> EjbModuleBuilder will fail with a null pointer.  This is the issue  
>> he posted above.  Dain as already fixed that issue and now you can  
>> have an empty openejb-jar element in your geronimo-openejb.xml.
>>
>> But I was still surprised about one thing (issue number three).   
>> Even having an empty openejb-jar, which is something he tried,  
>> *should* work.  So I dug a bit more in the code on the openejb  
>> side and found that the logic goes "if you have an openejb-jar,  
>> use it.  If you don't have one, create it automatically."  I.e. so  
>> adding the empty openejb-jar element effectively shut off the auto  
>> deploy functionality.  We do have the code that can augment an  
>> existing openejb-jar and add missing definitions automatically, so  
>> I've created an issue for that one as well.
>>   http://issues.apache.org/jira/browse/OPENEJB-452
>>
>> Hope to get these fixed in a couple hours.  Big thank you to  
>> Prasad for playing detective and finding *all* of these issues.   
>> Rather than stopping at the first one, he kept going all the way  
>> to the end and did what it took to get something working.  Very  
>> appreciated and very big time saver for me at least as I spent the  
>> weekend working on the conversion tool and wouldn't have been able  
>> to do that without all his work on this.
>>
>> Nice Job, Prasad!
>>
>> -David
>>
>>
>>
>>
>>
>>
>>
>


Re: Unable to deploy an EJB3.0 sample app -- Thank you Prasad

Posted by David Blevins <da...@visi.com>.
Ok.  All of these issues should be fixed.

-David

On Jan 22, 2007, at 4:46 PM, David Blevins wrote:

>
> On Jan 21, 2007, at 1:03 PM, Prasad Kashyap wrote:
>> I was able to deploy the app successfully but only after using an
>> openejb-jar.xml.
>>
>> Dain & Blevins,
>> On the irc discussion on Sat, 01/20, we thought that an
>> openejb-jar.xml is not mandatory. I debugged the builder and realized
>> the contrary.
>>
>> In the EJBModuleBuilder.java, it doesn't check to see if the
>> openejb-jar.xml is null or not.
>> String openejbJarXml = XmlUtil.loadOpenejbJarXml(object, moduleFile);
>> OpenejbJar openejbJar = XmlUtil.unmarshal(OpenejbJar.class,  
>> openejbJarXml);
>>
>> http://svn.apache.org/viewvc/geronimo/server/trunk/modules/ 
>> geronimo-openejb-builder/src/main/java/org/apache/geronimo/openejb/ 
>> deployment/EjbModuleBuilder.java?view=log
>
> On Jan 22, 2007, at 8:56 AM, Prasad Kashyap wrote:
>> Jarek,
>>
>> I had the same error.
>>
>> Try something like the following in your openejb-jar.xml
>>
>> <openejb-jar xmlns="http://www.openejb.org/openejb-jar/1.1">
>> <ejb-deployment ejb-name="Calculator"
>>                  deployment-id="samples/calculator/stateless/ 
>> CalculatorLocal"
>>                  container-id="Default Stateless Container"/>
>> </openejb-jar>
>
> First, a very big thank you to Prasad for really digging in this  
> weekend helping to find things that needed to be fixed.  All  
> because if his input I was able to find what I think are the the  
> last remaining gotchas in the EJB deployment system.  I've tried to  
> file jiras for everything, so here goes:
>
> The first issue he discovered is with deploying an ejb app with no  
> ejb-jar.xml. Geronimo needs that file to determine it's an ejb app,  
> so at least an empty one is required to make deployment work.   
> Here's the jira for that:
>    http://issues.apache.org/jira/browse/GERONIMO-2770
>
> So to fix that I need to see if there are any annotated beans in  
> the jar, which will be hard to do as there is no classloader  
> available in the 'createModule' section of the Geronimo deployment  
> system.  I racked my brain for a bit and think with a little work  
> to my xbean-finder ClassFinder I can do the required sniffing with  
> no classloader as it's all ASM-based.  I just need to add a couple  
> methods to report that data.  I've filed a jira for that as well:
>    http://issues.apache.org/jira/browse/XBEAN-70
>
> The second issue that Prasad found is that you have to had to have  
> an openejb-jar element in your geronimo-openejb.xml or the  
> EjbModuleBuilder will fail with a null pointer.  This is the issue  
> he posted above.  Dain as already fixed that issue and now you can  
> have an empty openejb-jar element in your geronimo-openejb.xml.
>
> But I was still surprised about one thing (issue number three).   
> Even having an empty openejb-jar, which is something he tried,  
> *should* work.  So I dug a bit more in the code on the openejb side  
> and found that the logic goes "if you have an openejb-jar, use it.   
> If you don't have one, create it automatically."  I.e. so adding  
> the empty openejb-jar element effectively shut off the auto deploy  
> functionality.  We do have the code that can augment an existing  
> openejb-jar and add missing definitions automatically, so I've  
> created an issue for that one as well.
>   http://issues.apache.org/jira/browse/OPENEJB-452
>
> Hope to get these fixed in a couple hours.  Big thank you to Prasad  
> for playing detective and finding *all* of these issues.  Rather  
> than stopping at the first one, he kept going all the way to the  
> end and did what it took to get something working.  Very  
> appreciated and very big time saver for me at least as I spent the  
> weekend working on the conversion tool and wouldn't have been able  
> to do that without all his work on this.
>
> Nice Job, Prasad!
>
> -David
>
>
>
>
>
>
>


Re: Unable to deploy an EJB3.0 sample app -- Thank you Prasad

Posted by David Jencks <da...@yahoo.com>.
On Jan 23, 2007, at 6:56 AM, Sachin Patel wrote:

> David, I thought I had already fixed this... for my knowledge, what  
> else needed to be done?

The code I started with only processed the geronimo application plan  
if there was an application.xml.  If the application.xml was missing  
the geronimo plan wasn't used.  I basically moved processing the  
geronimo plan to before the application.xml or ear was scanned for  
modules, and changed how the check for non-existent modules in the  
geronimo plan worked.

thanks
david jencks

>
> On Jan 22, 2007, at 9:54 PM, David Jencks wrote:
>
>> Btw in somewhat related work I fixed GERONIMO-2769 so that now if  
>> you deploy an ear without an application.xml you can get to all  
>> the problems you mention above :-)  I'm eagerly awaiting fixes for  
>> these!
>
>
> -sachin
>
>


Re: Unable to deploy an EJB3.0 sample app -- Thank you Prasad

Posted by Sachin Patel <sp...@gmail.com>.
David, I thought I had already fixed this... for my knowledge, what  
else needed to be done?

On Jan 22, 2007, at 9:54 PM, David Jencks wrote:

> Btw in somewhat related work I fixed GERONIMO-2769 so that now if  
> you deploy an ear without an application.xml you can get to all the  
> problems you mention above :-)  I'm eagerly awaiting fixes for these!


-sachin



Re: Unable to deploy an EJB3.0 sample app -- Thank you Prasad

Posted by David Jencks <da...@yahoo.com>.
On Jan 22, 2007, at 4:46 PM, David Blevins wrote:

>
> On Jan 21, 2007, at 1:03 PM, Prasad Kashyap wrote:
>> I was able to deploy the app successfully but only after using an
>> openejb-jar.xml.
>>
>> Dain & Blevins,
>> On the irc discussion on Sat, 01/20, we thought that an
>> openejb-jar.xml is not mandatory. I debugged the builder and realized
>> the contrary.
>>
>> In the EJBModuleBuilder.java, it doesn't check to see if the
>> openejb-jar.xml is null or not.
>> String openejbJarXml = XmlUtil.loadOpenejbJarXml(object, moduleFile);
>> OpenejbJar openejbJar = XmlUtil.unmarshal(OpenejbJar.class,  
>> openejbJarXml);
>>
>> http://svn.apache.org/viewvc/geronimo/server/trunk/modules/ 
>> geronimo-openejb-builder/src/main/java/org/apache/geronimo/openejb/ 
>> deployment/EjbModuleBuilder.java?view=log
>
> On Jan 22, 2007, at 8:56 AM, Prasad Kashyap wrote:
>> Jarek,
>>
>> I had the same error.
>>
>> Try something like the following in your openejb-jar.xml
>>
>> <openejb-jar xmlns="http://www.openejb.org/openejb-jar/1.1">
>> <ejb-deployment ejb-name="Calculator"
>>                  deployment-id="samples/calculator/stateless/ 
>> CalculatorLocal"
>>                  container-id="Default Stateless Container"/>
>> </openejb-jar>
>
> First, a very big thank you to Prasad for really digging in this  
> weekend helping to find things that needed to be fixed.  All  
> because if his input I was able to find what I think are the the  
> last remaining gotchas in the EJB deployment system.  I've tried to  
> file jiras for everything, so here goes:
>
> The first issue he discovered is with deploying an ejb app with no  
> ejb-jar.xml. Geronimo needs that file to determine it's an ejb app,  
> so at least an empty one is required to make deployment work.   
> Here's the jira for that:
>    http://issues.apache.org/jira/browse/GERONIMO-2770
>
> So to fix that I need to see if there are any annotated beans in  
> the jar, which will be hard to do as there is no classloader  
> available in the 'createModule' section of the Geronimo deployment  
> system.  I racked my brain for a bit and think with a little work  
> to my xbean-finder ClassFinder I can do the required sniffing with  
> no classloader as it's all ASM-based.  I just need to add a couple  
> methods to report that data.  I've filed a jira for that as well:
>    http://issues.apache.org/jira/browse/XBEAN-70
>
> The second issue that Prasad found is that you have to had to have  
> an openejb-jar element in your geronimo-openejb.xml or the  
> EjbModuleBuilder will fail with a null pointer.  This is the issue  
> he posted above.  Dain as already fixed that issue and now you can  
> have an empty openejb-jar element in your geronimo-openejb.xml.
>
> But I was still surprised about one thing (issue number three).   
> Even having an empty openejb-jar, which is something he tried,  
> *should* work.  So I dug a bit more in the code on the openejb side  
> and found that the logic goes "if you have an openejb-jar, use it.   
> If you don't have one, create it automatically."  I.e. so adding  
> the empty openejb-jar element effectively shut off the auto deploy  
> functionality.  We do have the code that can augment an existing  
> openejb-jar and add missing definitions automatically, so I've  
> created an issue for that one as well.
>   http://issues.apache.org/jira/browse/OPENEJB-452
>
> Hope to get these fixed in a couple hours.  Big thank you to Prasad  
> for playing detective and finding *all* of these issues.  Rather  
> than stopping at the first one, he kept going all the way to the  
> end and did what it took to get something working.  Very  
> appreciated and very big time saver for me at least as I spent the  
> weekend working on the conversion tool and wouldn't have been able  
> to do that without all his work on this.
>

Btw in somewhat related work I fixed GERONIMO-2769 so that now if you  
deploy an ear without an application.xml you can get to all the  
problems you mention above :-)  I'm eagerly awaiting fixes for these!
> Nice Job, Prasad!
Thanks to both of you!

david jencks

>
> -David
>
>
>
>
>
>
>


Re: Unable to deploy an EJB3.0 sample app -- Thank you Prasad

Posted by David Blevins <da...@visi.com>.
On Jan 21, 2007, at 1:03 PM, Prasad Kashyap wrote:
> I was able to deploy the app successfully but only after using an
> openejb-jar.xml.
>
> Dain & Blevins,
> On the irc discussion on Sat, 01/20, we thought that an
> openejb-jar.xml is not mandatory. I debugged the builder and realized
> the contrary.
>
> In the EJBModuleBuilder.java, it doesn't check to see if the
> openejb-jar.xml is null or not.
> String openejbJarXml = XmlUtil.loadOpenejbJarXml(object, moduleFile);
> OpenejbJar openejbJar = XmlUtil.unmarshal(OpenejbJar.class,  
> openejbJarXml);
>
> http://svn.apache.org/viewvc/geronimo/server/trunk/modules/geronimo- 
> openejb-builder/src/main/java/org/apache/geronimo/openejb/ 
> deployment/EjbModuleBuilder.java?view=log

On Jan 22, 2007, at 8:56 AM, Prasad Kashyap wrote:
> Jarek,
>
> I had the same error.
>
> Try something like the following in your openejb-jar.xml
>
> <openejb-jar xmlns="http://www.openejb.org/openejb-jar/1.1">
> <ejb-deployment ejb-name="Calculator"
>                  deployment-id="samples/calculator/stateless/ 
> CalculatorLocal"
>                  container-id="Default Stateless Container"/>
> </openejb-jar>

First, a very big thank you to Prasad for really digging in this  
weekend helping to find things that needed to be fixed.  All because  
if his input I was able to find what I think are the the last  
remaining gotchas in the EJB deployment system.  I've tried to file  
jiras for everything, so here goes:

The first issue he discovered is with deploying an ejb app with no  
ejb-jar.xml. Geronimo needs that file to determine it's an ejb app,  
so at least an empty one is required to make deployment work.  Here's  
the jira for that:
    http://issues.apache.org/jira/browse/GERONIMO-2770

So to fix that I need to see if there are any annotated beans in the  
jar, which will be hard to do as there is no classloader available in  
the 'createModule' section of the Geronimo deployment system.  I  
racked my brain for a bit and think with a little work to my xbean- 
finder ClassFinder I can do the required sniffing with no classloader  
as it's all ASM-based.  I just need to add a couple methods to report  
that data.  I've filed a jira for that as well:
    http://issues.apache.org/jira/browse/XBEAN-70

The second issue that Prasad found is that you have to had to have an  
openejb-jar element in your geronimo-openejb.xml or the  
EjbModuleBuilder will fail with a null pointer.  This is the issue he  
posted above.  Dain as already fixed that issue and now you can have  
an empty openejb-jar element in your geronimo-openejb.xml.

But I was still surprised about one thing (issue number three).  Even  
having an empty openejb-jar, which is something he tried, *should*  
work.  So I dug a bit more in the code on the openejb side and found  
that the logic goes "if you have an openejb-jar, use it.  If you  
don't have one, create it automatically."  I.e. so adding the empty  
openejb-jar element effectively shut off the auto deploy  
functionality.  We do have the code that can augment an existing  
openejb-jar and add missing definitions automatically, so I've  
created an issue for that one as well.
   http://issues.apache.org/jira/browse/OPENEJB-452

Hope to get these fixed in a couple hours.  Big thank you to Prasad  
for playing detective and finding *all* of these issues.  Rather than  
stopping at the first one, he kept going all the way to the end and  
did what it took to get something working.  Very appreciated and very  
big time saver for me at least as I spent the weekend working on the  
conversion tool and wouldn't have been able to do that without all  
his work on this.

Nice Job, Prasad!

-David








Re: Unable to deploy an EJB3.0 sample app

Posted by Prasad Kashyap <go...@gmail.com>.
I was able to deploy the app successfully but only after using an
openejb-jar.xml.

Dain & Blevins,
On the irc discussion on Sat, 01/20, we thought that an
openejb-jar.xml is not mandatory. I debugged the builder and realized
the contrary.

In the EJBModuleBuilder.java, it doesn't check to see if the
openejb-jar.xml is null or not.
String openejbJarXml = XmlUtil.loadOpenejbJarXml(object, moduleFile);
OpenejbJar openejbJar = XmlUtil.unmarshal(OpenejbJar.class, openejbJarXml);

http://svn.apache.org/viewvc/geronimo/server/trunk/modules/geronimo-openejb-builder/src/main/java/org/apache/geronimo/openejb/deployment/EjbModuleBuilder.java?view=log

Should this be fixed ? Or is the openejb-jar.xml mandatory ?

Cheers
Prasad

On 1/20/07, Prasad Kashyap <go...@gmail.com> wrote:
> I have created a sample application out of the
> calculator-stateless-pojo example in OpenEJB 3.0
>
> It is checked in here -
> http://svn.apache.org/viewvc/geronimo/samples/trunk/calculator-stateless-pojo/
>
> The app tries to demonstrate dependency injection of the bean into a
> servlet and obviates the need for the deployment-descriptor.
>
> But I learnt from David Blevins that while the app may not need a DD,
> geronimo doesn't yet support ear archives with no ejb-jar.xml. It
> doesn't know to give them to openejb. Hence under his guidance I put a
> dummy ejb-jar.xml and a minimum geronimo-web.xml.
>
> When I try to deploy this app, it fails with the following error:
>
>    Error: Unable to distribute calculator-stateless-ear-2.0-SNAPSHOT.ear:
>    Module was not an EJB: calculator-stateless-ejb-2.0-SNAPSHOT.jar
>
> Am I missing anything else here ? Can someone please help ?
>
>
> Thanx in advance
> Prasad
>