geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From David Jencks <>
Subject Re: Unable to deploy an EJB3.0 sample app -- Thank you Prasad
Date Tue, 23 Jan 2007 02:54:47 GMT

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, 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);
>> geronimo-openejb-builder/src/main/java/org/apache/geronimo/openejb/ 
>> deployment/
> 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="">
>> <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:
> 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:
> 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.
> 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

View raw message