You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@geronimo.apache.org by Doug Lochart <dl...@capecomputing.com> on 2007/05/16 20:09:14 UTC

Web Application Migration to Geronimo

Actually it is to the WebSphere Application Server Community Edition 
which runs Geronimo pre-wired  with Tomcat.

I have a web application deployed as an EAR  (Stateless Session EJB (in 
ejb_jar) , Servlet(in .WAR) ) that combined is a WebService.  I did not 
write the Application and I am real new to Web Services.  My task is to 
deploy this web application to WAS CE (Geronimo).  I tried simply 
deploying it as is but of course it failed giving me an error like this:


Error: Unable to distribute FrancePolicyServer.ear: Unable to
    resolve reference "WebServiceContainer" in gbean
    
default/Application_ID/1179336634177/car?EJBModule=FrancePolicyServer_EJB.jar,J2EEApplication=default/Application_ID/1179336634177/car,StatelessSessionBean=FrancePolicyServer,j2eeType=WSLink,name=FrancePolicyServer
    to a gbean matching the pattern [?name=TomcatWebContainer#]

First of all any idea what this error means?  I am sure it is a need for 
a plan but I would like to understand what is happening.

I have read through several developerworks articles and numerous 
examples on geronimo (looks like a kick a$$ product by the way, I like 
the IoC design) and from what I gather I need to provide 1 or more extra 
deployment descriptors/deployment plans specific for geronimo.  I was 
hoping for a good example of these plans so that I could hack it up and 
do some trial and error to learn but I still feel I lack the knowledge 
to even start down the right path.  I don't know which ones I need and 
how to construct them.

So what I am asking is based on my application I described what types of 
geronimo specific xml files do I need?

According to the docs it looks like I need a geronimo-application.xml as 
a deployment plan but I did not see a good example of that and I was 
left feeling that I am missing something for the Web Service.  In the 
META-INF directory of the ejb-jar file I see my webservices.xml and a 
mapping.xml and also 2 ibm (was 6.0) specific binding files  
ibm-webservices-ext.xmi and ibm-webservices-bnd.xmi which I have no clue 
how they come into play.  I do know that the Servlet is merely a pass 
through to the Session Bean.

thanks

Doug

Re: Web Application Migration to Geronimo

Posted by Doug Lochart <dl...@capecomputing.com>.
Hernan Cunico wrote:
> Don't know what version are you using but have you looked into these docs
>
We are using version 1.1.1
> http://cwiki.apache.org/GMOxDOC11/deployment-plans.html
>
> Here is a sample app for Geronimo v1.1.1
>
> http://cwiki.apache.org/GMOxDOC11/web-services-sample-application.html
>
> HTH
> Cheers!
> Hernan
>
I have seen these but I guess I am a bit nervous about committing to one 
of them.  Since I have a WebService as part of an EAR can all that be 
covered by one geronimo-application.xml?

Also I would like to know if anybody could explain what the exception I 
received means

thanks for your help

Doug

> Doug Lochart wrote:
>> Actually it is to the WebSphere Application Server Community Edition 
>> which runs Geronimo pre-wired  with Tomcat.
>>
>> I have a web application deployed as an EAR  (Stateless Session EJB 
>> (in ejb_jar) , Servlet(in .WAR) ) that combined is a WebService.  I 
>> did not write the Application and I am real new to Web Services.  My 
>> task is to deploy this web application to WAS CE (Geronimo).  I tried 
>> simply deploying it as is but of course it failed giving me an error 
>> like this:
>>
>>
>> Error: Unable to distribute FrancePolicyServer.ear: Unable to
>>    resolve reference "WebServiceContainer" in gbean
>>    
>> default/Application_ID/1179336634177/car?EJBModule=FrancePolicyServer_EJB.jar,J2EEApplication=default/Application_ID/1179336634177/car,StatelessSessionBean=FrancePolicyServer,j2eeType=WSLink,name=FrancePolicyServer 
>>
>>    to a gbean matching the pattern [?name=TomcatWebContainer#]
>>
>> First of all any idea what this error means?  I am sure it is a need 
>> for a plan but I would like to understand what is happening.
>>
>> I have read through several developerworks articles and numerous 
>> examples on geronimo (looks like a kick a$$ product by the way, I 
>> like the IoC design) and from what I gather I need to provide 1 or 
>> more extra deployment descriptors/deployment plans specific for 
>> geronimo.  I was hoping for a good example of these plans so that I 
>> could hack it up and do some trial and error to learn but I still 
>> feel I lack the knowledge to even start down the right path.  I don't 
>> know which ones I need and how to construct them.
>>
>> So what I am asking is based on my application I described what types 
>> of geronimo specific xml files do I need?
>>
>> According to the docs it looks like I need a geronimo-application.xml 
>> as a deployment plan but I did not see a good example of that and I 
>> was left feeling that I am missing something for the Web Service.  In 
>> the META-INF directory of the ejb-jar file I see my webservices.xml 
>> and a mapping.xml and also 2 ibm (was 6.0) specific binding files  
>> ibm-webservices-ext.xmi and ibm-webservices-bnd.xmi which I have no 
>> clue how they come into play.  I do know that the Servlet is merely a 
>> pass through to the Session Bean.
>>
>> thanks
>>
>> Doug
>>
>


Re: Web Application Migration to Geronimo

Posted by Hernan Cunico <hc...@gmail.com>.
Don't know what version are you using but have you looked into these docs

http://cwiki.apache.org/GMOxDOC11/deployment-plans.html

Here is a sample app for Geronimo v1.1.1

http://cwiki.apache.org/GMOxDOC11/web-services-sample-application.html

HTH
Cheers!
Hernan

Doug Lochart wrote:
> Actually it is to the WebSphere Application Server Community Edition 
> which runs Geronimo pre-wired  with Tomcat.
> 
> I have a web application deployed as an EAR  (Stateless Session EJB (in 
> ejb_jar) , Servlet(in .WAR) ) that combined is a WebService.  I did not 
> write the Application and I am real new to Web Services.  My task is to 
> deploy this web application to WAS CE (Geronimo).  I tried simply 
> deploying it as is but of course it failed giving me an error like this:
> 
> 
> Error: Unable to distribute FrancePolicyServer.ear: Unable to
>    resolve reference "WebServiceContainer" in gbean
>    
> default/Application_ID/1179336634177/car?EJBModule=FrancePolicyServer_EJB.jar,J2EEApplication=default/Application_ID/1179336634177/car,StatelessSessionBean=FrancePolicyServer,j2eeType=WSLink,name=FrancePolicyServer 
> 
>    to a gbean matching the pattern [?name=TomcatWebContainer#]
> 
> First of all any idea what this error means?  I am sure it is a need for 
> a plan but I would like to understand what is happening.
> 
> I have read through several developerworks articles and numerous 
> examples on geronimo (looks like a kick a$$ product by the way, I like 
> the IoC design) and from what I gather I need to provide 1 or more extra 
> deployment descriptors/deployment plans specific for geronimo.  I was 
> hoping for a good example of these plans so that I could hack it up and 
> do some trial and error to learn but I still feel I lack the knowledge 
> to even start down the right path.  I don't know which ones I need and 
> how to construct them.
> 
> So what I am asking is based on my application I described what types of 
> geronimo specific xml files do I need?
> 
> According to the docs it looks like I need a geronimo-application.xml as 
> a deployment plan but I did not see a good example of that and I was 
> left feeling that I am missing something for the Web Service.  In the 
> META-INF directory of the ejb-jar file I see my webservices.xml and a 
> mapping.xml and also 2 ibm (was 6.0) specific binding files  
> ibm-webservices-ext.xmi and ibm-webservices-bnd.xmi which I have no clue 
> how they come into play.  I do know that the Servlet is merely a pass 
> through to the Session Bean.
> 
> thanks
> 
> Doug
> 

Re: Web Application Migration to Geronimo

Posted by Doug Lochart <dl...@capecomputing.com>.
Bill Stoddard wrote:
> Doug Lochart wrote:
>>
>>>
>>> From the previous error I think that you have declared the ejb as an 
>>> ejb web service and geronimo is recognizing that and deploying the 
>>> stuff needed to hook it up as a web service, independent of the 
>>> generic web service servlet.  If you don't need the war for any 
>>> other reason I would try removing it, or at least removing the 
>>> generic web service servlet.  This shouldn't change any behavior but 
>>> should simplify what we need to look at.
>>>
>> I will do that next to at least try and narrow this thing down.
>>> Also Vamsi's comments jogged my memory-- I think in early versions 
>>> of geronimo you had to add the axis and perhaps tomcat dependencies 
>>> yourself, although we eventually got the web service deployers to do 
>>> it for you.  You may be using one of these earlier versions.
>>>
>> It turns out that IBM WAS CE deploys with Geronimo 1-0 with M5 ibm 
>> patches)  So maybe that is why I have to add the dependencies for 
>> Tomcat and Axis.
> Hi Doug,
> I take this to mean your using CE 1.0?  Uugh... if that's the case, 
> it's past time for you to upgrade :-)
>

> Find CE 1.1.0.1 (based on Apache Geronimo 1.1.1 or very nearly so) here:
> http://sourceforge.net/powerbar/websphere/download.php
>
> See the CHANGES file in the root install directory for a list of 
> patches that went into CE 1.1.0.1.
>
> Keep an eye out for CE 1.1.0.2, it should become available in a few 
> weeks.
> Bill
>
>
I stand corrected.  I trusted something online rather than what I 
deployed.  I looked into the Changes,txt file and see that I am running 
CE1.1.0.1.  After having to add the dependencies for Tomcat and Axis I 
just figured I was running an older one.  I will keep an eye out but if 
I can't get this thing deployed soon we may be faced with going to WAS 6.1

Doug

Re: Web Application Migration to Geronimo

Posted by Bill Stoddard <bi...@wstoddard.com>.
Doug Lochart wrote:
>
>>
>> From the previous error I think that you have declared the ejb as an 
>> ejb web service and geronimo is recognizing that and deploying the 
>> stuff needed to hook it up as a web service, independent of the 
>> generic web service servlet.  If you don't need the war for any other 
>> reason I would try removing it, or at least removing the generic web 
>> service servlet.  This shouldn't change any behavior but should 
>> simplify what we need to look at.
>>
> I will do that next to at least try and narrow this thing down.
>> Also Vamsi's comments jogged my memory-- I think in early versions of 
>> geronimo you had to add the axis and perhaps tomcat dependencies 
>> yourself, although we eventually got the web service deployers to do 
>> it for you.  You may be using one of these earlier versions.
>>
> It turns out that IBM WAS CE deploys with Geronimo 1-0 with M5 ibm 
> patches)  So maybe that is why I have to add the dependencies for 
> Tomcat and Axis.
Hi Doug,
I take this to mean your using CE 1.0?  Uugh... if that's the case, it's 
past time for you to upgrade :-)

Find CE 1.1.0.1 (based on Apache Geronimo 1.1.1 or very nearly so) here:
http://sourceforge.net/powerbar/websphere/download.php

See the CHANGES file in the root install directory for a list of patches 
that went into CE 1.1.0.1.

Keep an eye out for CE 1.1.0.2, it should become available in a few weeks. 

Bill


Re: Web Application Migration to Geronimo

Posted by Doug Lochart <dl...@capecomputing.com>.
FYI ... I removed the WAR from the ear and that did not change anything.

Doug

Doug Lochart wrote:
>
>>
>> From the previous error I think that you have declared the ejb as an 
>> ejb web service and geronimo is recognizing that and deploying the 
>> stuff needed to hook it up as a web service, independent of the 
>> generic web service servlet.  If you don't need the war for any other 
>> reason I would try removing it, or at least removing the generic web 
>> service servlet.  This shouldn't change any behavior but should 
>> simplify what we need to look at.
>>
> I will do that next to at least try and narrow this thing down.
>> Also Vamsi's comments jogged my memory-- I think in early versions of 
>> geronimo you had to add the axis and perhaps tomcat dependencies 
>> yourself, although we eventually got the web service deployers to do 
>> it for you.  You may be using one of these earlier versions.
>>
> It turns out that IBM WAS CE deploys with Geronimo 1-0 with M5 ibm 
> patches)  So maybe that is why I have to add the dependencies for 
> Tomcat and Axis.
>>
>> The manifest classpath in the ejb jar looks ok to me.  Since you are 
>> getting a NCDFE rather than ClassNotFoundException it's likely that 
>> the class is available but we're trying to load it from a parent 
>> classloader.  Can you supply more of the stack trace?
> No Problem!  Here is the Full trace from the server log.  I have log4j 
> set to trace logging as well.  The trace is at the end of this post.
>> Are any of your classes also in any other classloaders geronimo might 
>> be using or are they only present in the ear?
> Not to my knowledge.  I have a fresh install of WAS CE with an example 
> deployed and running.  The Generic Servlet class I am sure will fail 
> as it depends on a WAS 6.0 class that I will eventually import.  If 
> this could be the cause I will track it down and include it immediately.
>
> Since this class/jar it depends on comes standard with WAS 6.0 I would 
> like to add it somewhere common and not specifically to the ear 
> itself.  What would be the best way to do this in geronimo?
>
>
> 12:17:31,183 DEBUG [Configuration] Started configuration 
> france/FrancePolicyServerEar/1.0/car
> 12:17:32,803 DEBUG [Configuration] Stopping configuration 
> france/FrancePolicyServerEar/1.0/car
> 12:17:32,816 ERROR [Deployer] Deployment failed: 
> plan=/mnt/steve_d/Blaze65/deployfrancepolicy/./geronimo-application.xml, 
> module=/mnt/steve_d/Blaze65/deployfrancepolicy/FrancePolicyServer.ear
> org.apache.geronimo.common.DeploymentException: Unable to initialize 
> EJBContainer GBean: ejbNameFrancePolicyServer
>        at 
> org.openejb.deployment.SessionBuilder.addEJBContainerGBean(SessionBuilder.java:315) 
>
>        at 
> org.openejb.deployment.SessionBuilder.buildBeans(SessionBuilder.java:192)
>        at 
> org.openejb.deployment.OpenEJBModuleBuilder.addGBeans(OpenEJBModuleBuilder.java:514) 
>
>        at 
> org.openejb.deployment.OpenEJBModuleBuilder$$FastClassByCGLIB$$11bd7b20.invoke(<generated>) 
>
>        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>        at 
> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38) 
>
>        at 
> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122) 
>
>        at 
> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:817) 
>
>        at 
> org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:57)
>        at 
> org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke(RawOperationInvoker.java:35) 
>
>        at 
> org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept(ProxyMethodInterceptor.java:96) 
>
>        at 
> org.apache.geronimo.j2ee.deployment.ModuleBuilder$$EnhancerByCGLIB$$7afc2c82.addGBeans(<generated>) 
>
>        at 
> org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfiguration(EARConfigBuilder.java:562) 
>
>        at 
> org.apache.geronimo.j2ee.deployment.EARConfigBuilder$$FastClassByCGLIB$$38e56ec6.invoke(<generated>) 
>
>        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>        at 
> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38) 
>
>        at 
> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122) 
>
>        at 
> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:817) 
>
>        at 
> org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:57)
>        at 
> org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke(RawOperationInvoker.java:35) 
>
>        at 
> org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept(ProxyMethodInterceptor.java:96) 
>
>        at 
> org.apache.geronimo.deployment.ConfigurationBuilder$$EnhancerByCGLIB$$86e934f4.buildConfiguration(<generated>) 
>
>        at 
> org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:302)
>        at 
> org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:124)
>        at 
> org.apache.geronimo.deployment.Deployer$$FastClassByCGLIB$$734a235d.invoke(<generated>) 
>
>        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>        at 
> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38) 
>
>        at 
> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122) 
>
>        at 
> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:852) 
>
>        at 
> org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:239)
>        at 
> org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:338)
>        at 
> org.apache.geronimo.kernel.KernelGBean$$FastClassByCGLIB$$1cccefc9.invoke(<generated>) 
>
>        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>        at 
> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38) 
>
>        at 
> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122) 
>
>        at 
> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:852) 
>
>        at 
> org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:239)
>        at 
> org.apache.geronimo.system.jmx.MBeanGBeanBridge.invoke(MBeanGBeanBridge.java:168) 
>
>        at 
> com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke(DynamicMetaDataImpl.java:231) 
>
>        at 
> com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java:238)
>        at 
> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:833) 
>
>        at 
> com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:802)
>        at 
> javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1423) 
>
>        at 
> javax.management.remote.rmi.RMIConnectionImpl.access$100(RMIConnectionImpl.java:96) 
>
>        at 
> javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1260) 
>
>        at 
> java.security.AccessController.doPrivileged(AccessController.java:275)
>        at 
> javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1363) 
>
>        at 
> javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:797) 
>
>        at sun.reflect.GeneratedMethodAccessor56.invoke(Unknown Source)
>        at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
>
>        at java.lang.reflect.Method.invoke(Method.java:615)
>        at 
> sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:309)
>        at sun.rmi.transport.Transport$1.run(Transport.java:168)
>        at 
> java.security.AccessController.doPrivileged(AccessController.java:275)
>        at sun.rmi.transport.Transport.serviceCall(Transport.java:164)
>        at 
> sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:506)
>        at 
> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.handleRequest(TCPTransport.java:838) 
>
>        at 
> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:912) 
>
>        at java.lang.Thread.run(Thread.java:799)
> Caused by:
> java.lang.NoClassDefFoundError: 
> com.blazesoft.server.deploy.ejb.session.NdStatelessEjbServerBean
>        at java.lang.ClassLoader.defineClassImpl(Native Method)
>        at java.lang.ClassLoader.defineClass(ClassLoader.java:223)
>        at 
> java.security.SecureClassLoader.defineClass(SecureClassLoader.java:148)
>        at 
> org.apache.geronimo.kernel.classloader.JarFileClassLoader.access$200(JarFileClassLoader.java:51) 
>
>        at 
> org.apache.geronimo.kernel.classloader.JarFileClassLoader$6.run(JarFileClassLoader.java:275) 
>
>        at 
> java.security.AccessController.doPrivileged(AccessController.java:275)
>        at 
> org.apache.geronimo.kernel.classloader.JarFileClassLoader.findClass(JarFileClassLoader.java:227) 
>
>        at 
> org.apache.geronimo.kernel.config.MultiParentClassLoader.loadClass(MultiParentClassLoader.java:243) 
>
>        at java.lang.ClassLoader.loadClass(ClassLoader.java:563)
>        at 
> org.openejb.deployment.StatelessContainerBuilder.buildIt(StatelessContainerBuilder.java:97) 
>
>        at 
> org.openejb.deployment.AbstractContainerBuilder.createConfiguration(AbstractContainerBuilder.java:354) 
>
>        at 
> org.openejb.deployment.SessionBuilder.addEJBContainerGBean(SessionBuilder.java:313) 
>
>        ... 58 more
> 12:17:57,948 DEBUG [ManagerBase] Start expire sessions StandardManager 
> at 1179505077948 sessioncount 0
> 12:17:57,948 DEBUG [ManagerBase] End expire sessions StandardManager 
> processingTime 0 expired sessions: 0
>
>> thanks
>> david jencks
> No ... Thank You !!
>
>
> Doug
>


Re: Web Application Migration to Geronimo

Posted by Doug Lochart <dl...@capecomputing.com>.
>
> From the previous error I think that you have declared the ejb as an 
> ejb web service and geronimo is recognizing that and deploying the 
> stuff needed to hook it up as a web service, independent of the 
> generic web service servlet.  If you don't need the war for any other 
> reason I would try removing it, or at least removing the generic web 
> service servlet.  This shouldn't change any behavior but should 
> simplify what we need to look at.
>
I will do that next to at least try and narrow this thing down.
> Also Vamsi's comments jogged my memory-- I think in early versions of 
> geronimo you had to add the axis and perhaps tomcat dependencies 
> yourself, although we eventually got the web service deployers to do 
> it for you.  You may be using one of these earlier versions.
>
It turns out that IBM WAS CE deploys with Geronimo 1-0 with M5 ibm 
patches)  So maybe that is why I have to add the dependencies for Tomcat 
and Axis.
>
> The manifest classpath in the ejb jar looks ok to me.  Since you are 
> getting a NCDFE rather than ClassNotFoundException it's likely that 
> the class is available but we're trying to load it from a parent 
> classloader.  Can you supply more of the stack trace? 
>
No Problem!  Here is the Full trace from the server log.  I have log4j 
set to trace logging as well.  The trace is at the end of this post.
> Are any of your classes also in any other classloaders geronimo might 
> be using or are they only present in the ear?
Not to my knowledge.  I have a fresh install of WAS CE with an example 
deployed and running.  The Generic Servlet class I am sure will fail as 
it depends on a WAS 6.0 class that I will eventually import.  If this 
could be the cause I will track it down and include it immediately.

Since this class/jar it depends on comes standard with WAS 6.0 I would 
like to add it somewhere common and not specifically to the ear itself.  
What would be the best way to do this in geronimo?


12:17:31,183 DEBUG [Configuration] Started configuration 
france/FrancePolicyServerEar/1.0/car
12:17:32,803 DEBUG [Configuration] Stopping configuration 
france/FrancePolicyServerEar/1.0/car
12:17:32,816 ERROR [Deployer] Deployment failed: 
plan=/mnt/steve_d/Blaze65/deployfrancepolicy/./geronimo-application.xml, 
module=/mnt/steve_d/Blaze65/deployfrancepolicy/FrancePolicyServer.ear
org.apache.geronimo.common.DeploymentException: Unable to initialize 
EJBContainer GBean: ejbNameFrancePolicyServer
        at 
org.openejb.deployment.SessionBuilder.addEJBContainerGBean(SessionBuilder.java:315)
        at 
org.openejb.deployment.SessionBuilder.buildBeans(SessionBuilder.java:192)
        at 
org.openejb.deployment.OpenEJBModuleBuilder.addGBeans(OpenEJBModuleBuilder.java:514)
        at 
org.openejb.deployment.OpenEJBModuleBuilder$$FastClassByCGLIB$$11bd7b20.invoke(<generated>)
        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
        at 
org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
        at 
org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122)
        at 
org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:817)
        at 
org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:57)
        at 
org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke(RawOperationInvoker.java:35)
        at 
org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept(ProxyMethodInterceptor.java:96)
        at 
org.apache.geronimo.j2ee.deployment.ModuleBuilder$$EnhancerByCGLIB$$7afc2c82.addGBeans(<generated>)
        at 
org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfiguration(EARConfigBuilder.java:562)
        at 
org.apache.geronimo.j2ee.deployment.EARConfigBuilder$$FastClassByCGLIB$$38e56ec6.invoke(<generated>)
        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
        at 
org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
        at 
org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122)
        at 
org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:817)
        at 
org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:57)
        at 
org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke(RawOperationInvoker.java:35)
        at 
org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept(ProxyMethodInterceptor.java:96)
        at 
org.apache.geronimo.deployment.ConfigurationBuilder$$EnhancerByCGLIB$$86e934f4.buildConfiguration(<generated>)
        at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:302)
        at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:124)
        at 
org.apache.geronimo.deployment.Deployer$$FastClassByCGLIB$$734a235d.invoke(<generated>)
        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
        at 
org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
        at 
org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122)
        at 
org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:852)
        at 
org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:239)
        at 
org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:338)
        at 
org.apache.geronimo.kernel.KernelGBean$$FastClassByCGLIB$$1cccefc9.invoke(<generated>)
        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
        at 
org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
        at 
org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122)
        at 
org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:852)
        at 
org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:239)
        at 
org.apache.geronimo.system.jmx.MBeanGBeanBridge.invoke(MBeanGBeanBridge.java:168)
        at 
com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke(DynamicMetaDataImpl.java:231)
        at 
com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java:238)
        at 
com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:833)
        at 
com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:802)
        at 
javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1423)
        at 
javax.management.remote.rmi.RMIConnectionImpl.access$100(RMIConnectionImpl.java:96)
        at 
javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1260)
        at 
java.security.AccessController.doPrivileged(AccessController.java:275)
        at 
javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1363)
        at 
javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:797)
        at sun.reflect.GeneratedMethodAccessor56.invoke(Unknown Source)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:615)
        at 
sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:309)
        at sun.rmi.transport.Transport$1.run(Transport.java:168)
        at 
java.security.AccessController.doPrivileged(AccessController.java:275)
        at sun.rmi.transport.Transport.serviceCall(Transport.java:164)
        at 
sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:506)
        at 
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.handleRequest(TCPTransport.java:838)
        at 
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:912)
        at java.lang.Thread.run(Thread.java:799)
Caused by:
java.lang.NoClassDefFoundError: 
com.blazesoft.server.deploy.ejb.session.NdStatelessEjbServerBean
        at java.lang.ClassLoader.defineClassImpl(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:223)
        at 
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:148)
        at 
org.apache.geronimo.kernel.classloader.JarFileClassLoader.access$200(JarFileClassLoader.java:51)
        at 
org.apache.geronimo.kernel.classloader.JarFileClassLoader$6.run(JarFileClassLoader.java:275)
        at 
java.security.AccessController.doPrivileged(AccessController.java:275)
        at 
org.apache.geronimo.kernel.classloader.JarFileClassLoader.findClass(JarFileClassLoader.java:227)
        at 
org.apache.geronimo.kernel.config.MultiParentClassLoader.loadClass(MultiParentClassLoader.java:243)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:563)
        at 
org.openejb.deployment.StatelessContainerBuilder.buildIt(StatelessContainerBuilder.java:97)
        at 
org.openejb.deployment.AbstractContainerBuilder.createConfiguration(AbstractContainerBuilder.java:354)
        at 
org.openejb.deployment.SessionBuilder.addEJBContainerGBean(SessionBuilder.java:313)
        ... 58 more
12:17:57,948 DEBUG [ManagerBase] Start expire sessions StandardManager 
at 1179505077948 sessioncount 0
12:17:57,948 DEBUG [ManagerBase] End expire sessions StandardManager 
processingTime 0 expired sessions: 0

> thanks
> david jencks
No ... Thank You !!


Doug

Re: Web Application Migration to Geronimo

Posted by Kevan Miller <ke...@gmail.com>.
On May 20, 2007, at 4:33 AM, David Jencks wrote:

>
> On May 19, 2007, at 2:25 PM, Doug Lochart wrote:
>
>> David Jencks wrote:
>>> I don't see any obvious way this could be happening.  I would  
>>> investigate by putting a breakpoint just before where the  
>>> exception is thrown and looking at the classloader and what is  
>>> being loaded in the debugger.
>>>
>> Believe it or not I don't use Eclipse or other IDE ... except for  
>> the debugger aspect I despise them.  My fingers and mind are  
>> trained for emacs thus I rarely use IDE's unless I need a  
>> debugger.  So that being said how painful is it to setup geronimo  
>> under Eclipse or other debugger?  Is there an easy step by step  
>> process to do this some where posted?  At this point in time I  
>> don't really want to take a week just to get it running under a  
>> debugger.  If it is simple then I will do so.  Actually if I don't  
>> have another option I guess I will have to do so.
>> What IDE/Debugger would you suggest is the least painless to use  
>> with Geronimo?  I tried Eclipse a long time ago and hated the way  
>> it forced its structure on me.  I don't want to get into a war on  
>> IDE's but and IDE should never dictate external process or  
>> structure.  Okay off my soapbox ... any way I happy to do what you  
>> suggest.
>
> I use intellij IDEA and really like it.  After about an hour I  
> abandoned my years of emacs use and haven't looked back for java  
> code.  If you can get a copy (I think they have a free trial) run

FYI, Eclipse has *ok* bindings of emacs keys. It's one of the reasons  
that I'm using Eclipse over Intellij, at the moment. The emacs key  
bindings won't do everything that you'll want to do. However, you may  
find the transition a bit easier... You don't necessarily have to do  
a lot of editing in the IDE, anyway...

There's some emacs support in Intellij, but at the time I looked, not  
enough... That may have changed, or I may not have looked in the  
right places...

Eclipse setup is similar to Idea. There's information on getting  
Eclipse setup in our wiki -- http://cwiki.apache.org/GMOxDEV/ 
developing-geronimo-in-eclipse.html

To enable emacs key bindings in Eclipse: Windows -> Preferences ->  
General -> Keys -> Scheme -> Emacs

--kevan

Re: Web Application Migration to Geronimo

Posted by Doug Lochart <dl...@capecomputing.com>.
I answered most of my own questions already fro my previous post.  WAS 
CE does not have source downloads so I will have to install geronimo 
straight and try it that way.  I will report back what happens.

Doug

David Jencks wrote:

> On May 19, 2007, at 2:25 PM, Doug Lochart wrote:
>
>> David Jencks wrote:
>>> I don't see any obvious way this could be happening.  I would 
>>> investigate by putting a breakpoint just before where the exception 
>>> is thrown and looking at the classloader and what is being loaded in 
>>> the debugger.
>>>
>> Believe it or not I don't use Eclipse or other IDE ... except for the 
>> debugger aspect I despise them.  My fingers and mind are trained for 
>> emacs thus I rarely use IDE's unless I need a debugger.  So that 
>> being said how painful is it to setup geronimo under Eclipse or other 
>> debugger?  Is there an easy step by step process to do this some 
>> where posted?  At this point in time I don't really want to take a 
>> week just to get it running under a debugger.  If it is simple then I 
>> will do so.  Actually if I don't have another option I guess I will 
>> have to do so.
>> What IDE/Debugger would you suggest is the least painless to use with 
>> Geronimo?  I tried Eclipse a long time ago and hated the way it 
>> forced its structure on me.  I don't want to get into a war on IDE's 
>> but and IDE should never dictate external process or structure.  Okay 
>> off my soapbox ... any way I happy to do what you suggest.
>
> I use intellij IDEA and really like it.  After about an hour I 
> abandoned my years of emacs use and haven't looked back for java 
> code.  If you can get a copy (I think they have a free trial) run
>
> mvn idea:idea
>
> and open the project file this generates in IDEA.  When you stop at a 
> breakpoint you can use "Evaluate Expression" in the run menu to try 
> loading various classes in the available classloaders and probably 
> figure out what is going on pretty quickly.
>>
>>> Can you think of something that geronimo could do that would make it 
>>> so you didn't need to debug to solve this problem?
>>>
>> Well a thoroughly instrumented flow (as in debug statements) would 
>> help.  I think this code is JDK 1.5 so you could make use of 
>> annotations or cglib to intercept methods and add trace debugging 
>> that way but just entering and leaving methods would not suffice for 
>> this problem.  I did not see a whole lot of debug statements in the 
>> class where the exception occurs so I could not see the values for 
>> the arguments to the methods that were being called.
>>
>> Maybe on these types of exceptions (class loading) maybe when the 
>> log4j debug level is set to trace you could possibly create a 
>> hierarchical dump of the classloaders and what they have as their 
>> classpath?  I haven't written a classloader in a year or three so I 
>> forget what is at your disposal but a good environment dump with 
>> effective classpath information is always helpful.
>>
>> If you are familiar with Tapestry the exception mechanism is pretty 
>> nice albeit its geared for a web exception but you get the whole 
>> state of the system regarding that page and it makes tracing thr 
>> problem very easy.
>>> thanks
>>> david jencks
>>>
>> Thanks David.
>>
>> I have a question ... if the class that is causing the exception 
>> depends on another class that is not available to the classloader wil 
>> lyou still get the same exception or would you  be pointing to the 
>> truly offending class?   I am just wondering if the tool I am using 
>> aggregated all of the proper stuff for the task.
>
> I'm not thrilled with the message from NCDFE: I would prefer it told 
> you what class it was trying to load when it couldn't load the class 
> it complains about.  This might be what you mean too :-)  Anyway I 
> think you will figure out what is wrong pretty quickly if you can get 
> to the point where the error occurs in a debugger.
>
> thanks
> david jencks
>
>
>>
>>> On May 19, 2007, at 7:09 AM, Doug Lochart wrote:
>>>
>>>> David or anyone else,
>>>>
>>>> Have you had any chance to look at the full stack trace of my 
>>>> exception yet?  Here it is again.
>>>>>>
>>>>>> 12:17:31,183 DEBUG [Configuration] Started configuration 
>>>>>> france/FrancePolicyServerEar/1.0/car
>>>>>> 12:17:32,803 DEBUG [Configuration] Stopping configuration 
>>>>>> france/FrancePolicyServerEar/1.0/car
>>>>>> 12:17:32,816 ERROR [Deployer] Deployment failed: 
>>>>>> plan=/mnt/steve_d/Blaze65/deployfrancepolicy/./geronimo-application.xml, 
>>>>>> module=/mnt/steve_d/Blaze65/deployfrancepolicy/FrancePolicyServer.ear 
>>>>>>
>>>>>> org.apache.geronimo.common.DeploymentException: Unable to 
>>>>>> initialize EJBContainer GBean: ejbNameFrancePolicyServer
>>>>>>        at 
>>>>>> org.openejb.deployment.SessionBuilder.addEJBContainerGBean(SessionBuilder.java:315) 
>>>>>>
>>>>>>        at 
>>>>>> org.openejb.deployment.SessionBuilder.buildBeans(SessionBuilder.java:192) 
>>>>>>
>>>>>>        at 
>>>>>> org.openejb.deployment.OpenEJBModuleBuilder.addGBeans(OpenEJBModuleBuilder.java:514) 
>>>>>>
>>>>>>        at 
>>>>>> org.openejb.deployment.OpenEJBModuleBuilder$$FastClassByCGLIB$$11bd7b20.invoke(<generated>) 
>>>>>>
>>>>>>        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>>>>>>        at 
>>>>>> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:817) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:57) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke(RawOperationInvoker.java:35) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept(ProxyMethodInterceptor.java:96) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.j2ee.deployment.ModuleBuilder$$EnhancerByCGLIB$$7afc2c82.addGBeans(<generated>) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfiguration(EARConfigBuilder.java:562) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.j2ee.deployment.EARConfigBuilder$$FastClassByCGLIB$$38e56ec6.invoke(<generated>) 
>>>>>>
>>>>>>        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>>>>>>        at 
>>>>>> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:817) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:57) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke(RawOperationInvoker.java:35) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept(ProxyMethodInterceptor.java:96) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.deployment.ConfigurationBuilder$$EnhancerByCGLIB$$86e934f4.buildConfiguration(<generated>) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:302)
>>>>>>        at 
>>>>>> org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:124)
>>>>>>        at 
>>>>>> org.apache.geronimo.deployment.Deployer$$FastClassByCGLIB$$734a235d.invoke(<generated>) 
>>>>>>
>>>>>>        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>>>>>>        at 
>>>>>> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:852) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:239) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:338)
>>>>>>        at 
>>>>>> org.apache.geronimo.kernel.KernelGBean$$FastClassByCGLIB$$1cccefc9.invoke(<generated>) 
>>>>>>
>>>>>>        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>>>>>>        at 
>>>>>> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:852) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:239) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.system.jmx.MBeanGBeanBridge.invoke(MBeanGBeanBridge.java:168) 
>>>>>>
>>>>>>        at 
>>>>>> com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke(DynamicMetaDataImpl.java:231) 
>>>>>>
>>>>>>        at 
>>>>>> com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java:238)
>>>>>>        at 
>>>>>> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:833) 
>>>>>>
>>>>>>        at 
>>>>>> com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:802) 
>>>>>>
>>>>>>        at 
>>>>>> javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1423) 
>>>>>>
>>>>>>        at 
>>>>>> javax.management.remote.rmi.RMIConnectionImpl.access$100(RMIConnectionImpl.java:96) 
>>>>>>
>>>>>>        at 
>>>>>> javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1260) 
>>>>>>
>>>>>>        at 
>>>>>> java.security.AccessController.doPrivileged(AccessController.java:275) 
>>>>>>
>>>>>>        at 
>>>>>> javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1363) 
>>>>>>
>>>>>>        at 
>>>>>> javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:797) 
>>>>>>
>>>>>>        at sun.reflect.GeneratedMethodAccessor56.invoke(Unknown 
>>>>>> Source)
>>>>>>        at 
>>>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
>>>>>>
>>>>>>        at java.lang.reflect.Method.invoke(Method.java:615)
>>>>>>        at 
>>>>>> sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:309)
>>>>>>        at sun.rmi.transport.Transport$1.run(Transport.java:168)
>>>>>>        at 
>>>>>> java.security.AccessController.doPrivileged(AccessController.java:275) 
>>>>>>
>>>>>>        at 
>>>>>> sun.rmi.transport.Transport.serviceCall(Transport.java:164)
>>>>>>        at 
>>>>>> sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:506) 
>>>>>>
>>>>>>        at 
>>>>>> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.handleRequest(TCPTransport.java:838) 
>>>>>>
>>>>>>        at 
>>>>>> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:912) 
>>>>>>
>>>>>>        at java.lang.Thread.run(Thread.java:799)
>>>>>> Caused by:
>>>>>> java.lang.NoClassDefFoundError: 
>>>>>> com.blazesoft.server.deploy.ejb.session.NdStatelessEjbServerBean
>>>>>>        at java.lang.ClassLoader.defineClassImpl(Native Method)
>>>>>>        at java.lang.ClassLoader.defineClass(ClassLoader.java:223)
>>>>>>        at 
>>>>>> java.security.SecureClassLoader.defineClass(SecureClassLoader.java:148) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.kernel.classloader.JarFileClassLoader.access$200(JarFileClassLoader.java:51) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.kernel.classloader.JarFileClassLoader$6.run(JarFileClassLoader.java:275) 
>>>>>>
>>>>>>        at 
>>>>>> java.security.AccessController.doPrivileged(AccessController.java:275) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.kernel.classloader.JarFileClassLoader.findClass(JarFileClassLoader.java:227) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.kernel.config.MultiParentClassLoader.loadClass(MultiParentClassLoader.java:243) 
>>>>>>
>>>>>>        at java.lang.ClassLoader.loadClass(ClassLoader.java:563)
>>>>>>        at 
>>>>>> org.openejb.deployment.StatelessContainerBuilder.buildIt(StatelessContainerBuilder.java:97) 
>>>>>>
>>>>>>        at 
>>>>>> org.openejb.deployment.AbstractContainerBuilder.createConfiguration(AbstractContainerBuilder.java:354) 
>>>>>>
>>>>>>        at 
>>>>>> org.openejb.deployment.SessionBuilder.addEJBContainerGBean(SessionBuilder.java:313) 
>>>>>>
>>>>>>        ... 58 more
>>>>>> 12:17:57,948 DEBUG [ManagerBase] Start expire sessions 
>>>>>> StandardManager at 1179505077948 sessioncount 0
>>>>>> 12:17:57,948 DEBUG [ManagerBase] End expire sessions 
>>>>>> StandardManager processingTime 0 expired sessions: 0
>>>>>>
>>>>>>> thanks
>>>>>>> david jencks
>>>>>> No ... Thank You !!
>>>>>>
>>>>>>
>>>>>> Doug
>>>>>>
>>>>>
>>>>>
>>>>
>>>
>>>
>>
>
>


Re: Web Application Migration to Geronimo

Posted by Doug Lochart <dl...@capecomputing.com>.
David Jencks wrote:
>
> On May 19, 2007, at 2:25 PM, Doug Lochart wrote:
>
>> David Jencks wrote:
>>> I don't see any obvious way this could be happening.  I would 
>>> investigate by putting a breakpoint just before where the exception 
>>> is thrown and looking at the classloader and what is being loaded in 
>>> the debugger.
>>>
>> Believe it or not I don't use Eclipse or other IDE ... except for the 
>> debugger aspect I despise them.  My fingers and mind are trained for 
>> emacs thus I rarely use IDE's unless I need a debugger.  So that 
>> being said how painful is it to setup geronimo under Eclipse or other 
>> debugger?  Is there an easy step by step process to do this some 
>> where posted?  At this point in time I don't really want to take a 
>> week just to get it running under a debugger.  If it is simple then I 
>> will do so.  Actually if I don't have another option I guess I will 
>> have to do so.
>> What IDE/Debugger would you suggest is the least painless to use with 
>> Geronimo?  I tried Eclipse a long time ago and hated the way it 
>> forced its structure on me.  I don't want to get into a war on IDE's 
>> but and IDE should never dictate external process or structure.  Okay 
>> off my soapbox ... any way I happy to do what you suggest.
>
> I use intellij IDEA and really like it.  After about an hour I 
> abandoned my years of emacs use and haven't looked back for java 
> code.  If you can get a copy (I think they have a free trial) run
>
> mvn idea:idea
>
pray tell what is mvn?  Is this a command within idea or is this maven?  
I haven't used maven in 3 years.  If it is maven and the maven project 
files that comes with geronimo I doubt or wonder if that will be there 
in WAS CE
> and open the project file this generates in IDEA.  When you stop at a 
> breakpoint you can use "Evaluate Expression" in the run menu to try 
> loading various classes in the available classloaders and probably 
> figure out what is going on pretty quickly.
Thanks for the suggestion.  I will give it a try.  I keep forgetting 
this is Websphere Application Server Community Edition so I hope it is 
the same.  What I will do first is just install the latest geronimo with 
tomcat executable and see if it runs properly there just in case.  Then 
I will
>>
>>> Can you think of something that geronimo could do that would make it 
>>> so you didn't need to debug to solve this problem?
>>>
>> Well a thoroughly instrumented flow (as in debug statements) would 
>> help.  I think this code is JDK 1.5 so you could make use of 
>> annotations or cglib to intercept methods and add trace debugging 
>> that way but just entering and leaving methods would not suffice for 
>> this problem.  I did not see a whole lot of debug statements in the 
>> class where the exception occurs so I could not see the values for 
>> the arguments to the methods that were being called.
>>
>> Maybe on these types of exceptions (class loading) maybe when the 
>> log4j debug level is set to trace you could possibly create a 
>> hierarchical dump of the classloaders and what they have as their 
>> classpath?  I haven't written a classloader in a year or three so I 
>> forget what is at your disposal but a good environment dump with 
>> effective classpath information is always helpful.
>>
>> If you are familiar with Tapestry the exception mechanism is pretty 
>> nice albeit its geared for a web exception but you get the whole 
>> state of the system regarding that page and it makes tracing thr 
>> problem very easy.
>>> thanks
>>> david jencks
>>>
>> Thanks David.
>>
>> I have a question ... if the class that is causing the exception 
>> depends on another class that is not available to the classloader wil 
>> lyou still get the same exception or would you  be pointing to the 
>> truly offending class?   I am just wondering if the tool I am using 
>> aggregated all of the proper stuff for the task.
>
> I'm not thrilled with the message from NCDFE: I would prefer it told 
> you what class it was trying to load when it couldn't load the class 
> it complains about.  This might be what you mean too :-)  Anyway I 
> think you will figure out what is wrong pretty quickly if you can get 
> to the point where the error occurs in a debugger.
>
I Hope so too
> thanks
> david jencks
>
thanks.  have a good weekend (what is left of it)

Doug
>
>>
>>> On May 19, 2007, at 7:09 AM, Doug Lochart wrote:
>>>
>>>> David or anyone else,
>>>>
>>>> Have you had any chance to look at the full stack trace of my 
>>>> exception yet?  Here it is again.
>>>>>>
>>>>>> 12:17:31,183 DEBUG [Configuration] Started configuration 
>>>>>> france/FrancePolicyServerEar/1.0/car
>>>>>> 12:17:32,803 DEBUG [Configuration] Stopping configuration 
>>>>>> france/FrancePolicyServerEar/1.0/car
>>>>>> 12:17:32,816 ERROR [Deployer] Deployment failed: 
>>>>>> plan=/mnt/steve_d/Blaze65/deployfrancepolicy/./geronimo-application.xml, 
>>>>>> module=/mnt/steve_d/Blaze65/deployfrancepolicy/FrancePolicyServer.ear 
>>>>>>
>>>>>> org.apache.geronimo.common.DeploymentException: Unable to 
>>>>>> initialize EJBContainer GBean: ejbNameFrancePolicyServer
>>>>>>        at 
>>>>>> org.openejb.deployment.SessionBuilder.addEJBContainerGBean(SessionBuilder.java:315) 
>>>>>>
>>>>>>        at 
>>>>>> org.openejb.deployment.SessionBuilder.buildBeans(SessionBuilder.java:192) 
>>>>>>
>>>>>>        at 
>>>>>> org.openejb.deployment.OpenEJBModuleBuilder.addGBeans(OpenEJBModuleBuilder.java:514) 
>>>>>>
>>>>>>        at 
>>>>>> org.openejb.deployment.OpenEJBModuleBuilder$$FastClassByCGLIB$$11bd7b20.invoke(<generated>) 
>>>>>>
>>>>>>        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>>>>>>        at 
>>>>>> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:817) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:57) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke(RawOperationInvoker.java:35) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept(ProxyMethodInterceptor.java:96) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.j2ee.deployment.ModuleBuilder$$EnhancerByCGLIB$$7afc2c82.addGBeans(<generated>) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfiguration(EARConfigBuilder.java:562) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.j2ee.deployment.EARConfigBuilder$$FastClassByCGLIB$$38e56ec6.invoke(<generated>) 
>>>>>>
>>>>>>        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>>>>>>        at 
>>>>>> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:817) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:57) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke(RawOperationInvoker.java:35) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept(ProxyMethodInterceptor.java:96) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.deployment.ConfigurationBuilder$$EnhancerByCGLIB$$86e934f4.buildConfiguration(<generated>) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:302)
>>>>>>        at 
>>>>>> org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:124)
>>>>>>        at 
>>>>>> org.apache.geronimo.deployment.Deployer$$FastClassByCGLIB$$734a235d.invoke(<generated>) 
>>>>>>
>>>>>>        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>>>>>>        at 
>>>>>> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:852) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:239) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:338)
>>>>>>        at 
>>>>>> org.apache.geronimo.kernel.KernelGBean$$FastClassByCGLIB$$1cccefc9.invoke(<generated>) 
>>>>>>
>>>>>>        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>>>>>>        at 
>>>>>> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:852) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:239) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.system.jmx.MBeanGBeanBridge.invoke(MBeanGBeanBridge.java:168) 
>>>>>>
>>>>>>        at 
>>>>>> com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke(DynamicMetaDataImpl.java:231) 
>>>>>>
>>>>>>        at 
>>>>>> com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java:238)
>>>>>>        at 
>>>>>> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:833) 
>>>>>>
>>>>>>        at 
>>>>>> com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:802) 
>>>>>>
>>>>>>        at 
>>>>>> javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1423) 
>>>>>>
>>>>>>        at 
>>>>>> javax.management.remote.rmi.RMIConnectionImpl.access$100(RMIConnectionImpl.java:96) 
>>>>>>
>>>>>>        at 
>>>>>> javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1260) 
>>>>>>
>>>>>>        at 
>>>>>> java.security.AccessController.doPrivileged(AccessController.java:275) 
>>>>>>
>>>>>>        at 
>>>>>> javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1363) 
>>>>>>
>>>>>>        at 
>>>>>> javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:797) 
>>>>>>
>>>>>>        at sun.reflect.GeneratedMethodAccessor56.invoke(Unknown 
>>>>>> Source)
>>>>>>        at 
>>>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
>>>>>>
>>>>>>        at java.lang.reflect.Method.invoke(Method.java:615)
>>>>>>        at 
>>>>>> sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:309)
>>>>>>        at sun.rmi.transport.Transport$1.run(Transport.java:168)
>>>>>>        at 
>>>>>> java.security.AccessController.doPrivileged(AccessController.java:275) 
>>>>>>
>>>>>>        at 
>>>>>> sun.rmi.transport.Transport.serviceCall(Transport.java:164)
>>>>>>        at 
>>>>>> sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:506) 
>>>>>>
>>>>>>        at 
>>>>>> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.handleRequest(TCPTransport.java:838) 
>>>>>>
>>>>>>        at 
>>>>>> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:912) 
>>>>>>
>>>>>>        at java.lang.Thread.run(Thread.java:799)
>>>>>> Caused by:
>>>>>> java.lang.NoClassDefFoundError: 
>>>>>> com.blazesoft.server.deploy.ejb.session.NdStatelessEjbServerBean
>>>>>>        at java.lang.ClassLoader.defineClassImpl(Native Method)
>>>>>>        at java.lang.ClassLoader.defineClass(ClassLoader.java:223)
>>>>>>        at 
>>>>>> java.security.SecureClassLoader.defineClass(SecureClassLoader.java:148) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.kernel.classloader.JarFileClassLoader.access$200(JarFileClassLoader.java:51) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.kernel.classloader.JarFileClassLoader$6.run(JarFileClassLoader.java:275) 
>>>>>>
>>>>>>        at 
>>>>>> java.security.AccessController.doPrivileged(AccessController.java:275) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.kernel.classloader.JarFileClassLoader.findClass(JarFileClassLoader.java:227) 
>>>>>>
>>>>>>        at 
>>>>>> org.apache.geronimo.kernel.config.MultiParentClassLoader.loadClass(MultiParentClassLoader.java:243) 
>>>>>>
>>>>>>        at java.lang.ClassLoader.loadClass(ClassLoader.java:563)
>>>>>>        at 
>>>>>> org.openejb.deployment.StatelessContainerBuilder.buildIt(StatelessContainerBuilder.java:97) 
>>>>>>
>>>>>>        at 
>>>>>> org.openejb.deployment.AbstractContainerBuilder.createConfiguration(AbstractContainerBuilder.java:354) 
>>>>>>
>>>>>>        at 
>>>>>> org.openejb.deployment.SessionBuilder.addEJBContainerGBean(SessionBuilder.java:313) 
>>>>>>
>>>>>>        ... 58 more
>>>>>> 12:17:57,948 DEBUG [ManagerBase] Start expire sessions 
>>>>>> StandardManager at 1179505077948 sessioncount 0
>>>>>> 12:17:57,948 DEBUG [ManagerBase] End expire sessions 
>>>>>> StandardManager processingTime 0 expired sessions: 0
>>>>>>
>>>>>>> thanks
>>>>>>> david jencks
>>>>>> No ... Thank You !!
>>>>>>
>>>>>>
>>>>>> Doug
>>>>>>
>>>>>
>>>>>
>>>>
>>>
>>>
>>
>
>


Re: Web Application Migration to Geronimo

Posted by David Jencks <da...@yahoo.com>.
On May 19, 2007, at 2:25 PM, Doug Lochart wrote:

> David Jencks wrote:
>> I don't see any obvious way this could be happening.  I would  
>> investigate by putting a breakpoint just before where the  
>> exception is thrown and looking at the classloader and what is  
>> being loaded in the debugger.
>>
> Believe it or not I don't use Eclipse or other IDE ... except for  
> the debugger aspect I despise them.  My fingers and mind are  
> trained for emacs thus I rarely use IDE's unless I need a  
> debugger.  So that being said how painful is it to setup geronimo  
> under Eclipse or other debugger?  Is there an easy step by step  
> process to do this some where posted?  At this point in time I  
> don't really want to take a week just to get it running under a  
> debugger.  If it is simple then I will do so.  Actually if I don't  
> have another option I guess I will have to do so.
> What IDE/Debugger would you suggest is the least painless to use  
> with Geronimo?  I tried Eclipse a long time ago and hated the way  
> it forced its structure on me.  I don't want to get into a war on  
> IDE's but and IDE should never dictate external process or  
> structure.  Okay off my soapbox ... any way I happy to do what you  
> suggest.

I use intellij IDEA and really like it.  After about an hour I  
abandoned my years of emacs use and haven't looked back for java  
code.  If you can get a copy (I think they have a free trial) run

mvn idea:idea

and open the project file this generates in IDEA.  When you stop at a  
breakpoint you can use "Evaluate Expression" in the run menu to try  
loading various classes in the available classloaders and probably  
figure out what is going on pretty quickly.
>
>> Can you think of something that geronimo could do that would make  
>> it so you didn't need to debug to solve this problem?
>>
> Well a thoroughly instrumented flow (as in debug statements) would  
> help.  I think this code is JDK 1.5 so you could make use of  
> annotations or cglib to intercept methods and add trace debugging  
> that way but just entering and leaving methods would not suffice  
> for this problem.  I did not see a whole lot of debug statements in  
> the class where the exception occurs so I could not see the values  
> for the arguments to the methods that were being called.
>
> Maybe on these types of exceptions (class loading) maybe when the  
> log4j debug level is set to trace you could possibly create a  
> hierarchical dump of the classloaders and what they have as their  
> classpath?  I haven't written a classloader in a year or three so I  
> forget what is at your disposal but a good environment dump with  
> effective classpath information is always helpful.
>
> If you are familiar with Tapestry the exception mechanism is pretty  
> nice albeit its geared for a web exception but you get the whole  
> state of the system regarding that page and it makes tracing thr  
> problem very easy.
>> thanks
>> david jencks
>>
> Thanks David.
>
> I have a question ... if the class that is causing the exception  
> depends on another class that is not available to the classloader  
> wil lyou still get the same exception or would you  be pointing to  
> the truly offending class?   I am just wondering if the tool I am  
> using aggregated all of the proper stuff for the task.

I'm not thrilled with the message from NCDFE: I would prefer it told  
you what class it was trying to load when it couldn't load the class  
it complains about.  This might be what you mean too :-)  Anyway I  
think you will figure out what is wrong pretty quickly if you can get  
to the point where the error occurs in a debugger.

thanks
david jencks


>
>> On May 19, 2007, at 7:09 AM, Doug Lochart wrote:
>>
>>> David or anyone else,
>>>
>>> Have you had any chance to look at the full stack trace of my  
>>> exception yet?  Here it is again.
>>>>>
>>>>> 12:17:31,183 DEBUG [Configuration] Started configuration france/ 
>>>>> FrancePolicyServerEar/1.0/car
>>>>> 12:17:32,803 DEBUG [Configuration] Stopping configuration  
>>>>> france/FrancePolicyServerEar/1.0/car
>>>>> 12:17:32,816 ERROR [Deployer] Deployment failed: plan=/mnt/ 
>>>>> steve_d/Blaze65/deployfrancepolicy/./geronimo-application.xml,  
>>>>> module=/mnt/steve_d/Blaze65/deployfrancepolicy/ 
>>>>> FrancePolicyServer.ear
>>>>> org.apache.geronimo.common.DeploymentException: Unable to  
>>>>> initialize EJBContainer GBean: ejbNameFrancePolicyServer
>>>>>        at  
>>>>> org.openejb.deployment.SessionBuilder.addEJBContainerGBean 
>>>>> (SessionBuilder.java:315)
>>>>>        at org.openejb.deployment.SessionBuilder.buildBeans 
>>>>> (SessionBuilder.java:192)
>>>>>        at org.openejb.deployment.OpenEJBModuleBuilder.addGBeans 
>>>>> (OpenEJBModuleBuilder.java:514)
>>>>>        at org.openejb.deployment.OpenEJBModuleBuilder$ 
>>>>> $FastClassByCGLIB$$11bd7b20.invoke(<generated>)
>>>>>        at net.sf.cglib.reflect.FastMethod.invoke 
>>>>> (FastMethod.java:53)
>>>>>        at  
>>>>> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke 
>>>>> (FastMethodInvoker.java:38)
>>>>>        at  
>>>>> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke 
>>>>> (GBeanOperation.java:122)
>>>>>        at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke 
>>>>> (GBeanInstance.java:817)
>>>>>        at org.apache.geronimo.gbean.runtime.RawInvoker.invoke 
>>>>> (RawInvoker.java:57)
>>>>>        at  
>>>>> org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke 
>>>>> (RawOperationInvoker.java:35)
>>>>>        at  
>>>>> org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept( 
>>>>> ProxyMethodInterceptor.java:96)
>>>>>        at org.apache.geronimo.j2ee.deployment.ModuleBuilder$ 
>>>>> $EnhancerByCGLIB$$7afc2c82.addGBeans(<generated>)
>>>>>        at  
>>>>> org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfigur 
>>>>> ation(EARConfigBuilder.java:562)
>>>>>        at org.apache.geronimo.j2ee.deployment.EARConfigBuilder$ 
>>>>> $FastClassByCGLIB$$38e56ec6.invoke(<generated>)
>>>>>        at net.sf.cglib.reflect.FastMethod.invoke 
>>>>> (FastMethod.java:53)
>>>>>        at  
>>>>> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke 
>>>>> (FastMethodInvoker.java:38)
>>>>>        at  
>>>>> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke 
>>>>> (GBeanOperation.java:122)
>>>>>        at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke 
>>>>> (GBeanInstance.java:817)
>>>>>        at org.apache.geronimo.gbean.runtime.RawInvoker.invoke 
>>>>> (RawInvoker.java:57)
>>>>>        at  
>>>>> org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke 
>>>>> (RawOperationInvoker.java:35)
>>>>>        at  
>>>>> org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept( 
>>>>> ProxyMethodInterceptor.java:96)
>>>>>        at org.apache.geronimo.deployment.ConfigurationBuilder$ 
>>>>> $EnhancerByCGLIB$$86e934f4.buildConfiguration(<generated>)
>>>>>        at org.apache.geronimo.deployment.Deployer.deploy 
>>>>> (Deployer.java:302)
>>>>>        at org.apache.geronimo.deployment.Deployer.deploy 
>>>>> (Deployer.java:124)
>>>>>        at org.apache.geronimo.deployment.Deployer$ 
>>>>> $FastClassByCGLIB$$734a235d.invoke(<generated>)
>>>>>        at net.sf.cglib.reflect.FastMethod.invoke 
>>>>> (FastMethod.java:53)
>>>>>        at  
>>>>> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke 
>>>>> (FastMethodInvoker.java:38)
>>>>>        at  
>>>>> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke 
>>>>> (GBeanOperation.java:122)
>>>>>        at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke 
>>>>> (GBeanInstance.java:852)
>>>>>        at org.apache.geronimo.kernel.basic.BasicKernel.invoke 
>>>>> (BasicKernel.java:239)
>>>>>        at org.apache.geronimo.kernel.KernelGBean.invoke 
>>>>> (KernelGBean.java:338)
>>>>>        at org.apache.geronimo.kernel.KernelGBean$ 
>>>>> $FastClassByCGLIB$$1cccefc9.invoke(<generated>)
>>>>>        at net.sf.cglib.reflect.FastMethod.invoke 
>>>>> (FastMethod.java:53)
>>>>>        at  
>>>>> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke 
>>>>> (FastMethodInvoker.java:38)
>>>>>        at  
>>>>> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke 
>>>>> (GBeanOperation.java:122)
>>>>>        at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke 
>>>>> (GBeanInstance.java:852)
>>>>>        at org.apache.geronimo.kernel.basic.BasicKernel.invoke 
>>>>> (BasicKernel.java:239)
>>>>>        at org.apache.geronimo.system.jmx.MBeanGBeanBridge.invoke 
>>>>> (MBeanGBeanBridge.java:168)
>>>>>        at com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke 
>>>>> (DynamicMetaDataImpl.java:231)
>>>>>        at com.sun.jmx.mbeanserver.MetaDataImpl.invoke 
>>>>> (MetaDataImpl.java:238)
>>>>>        at  
>>>>> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke 
>>>>> (DefaultMBeanServerInterceptor.java:833)
>>>>>        at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke 
>>>>> (JmxMBeanServer.java:802)
>>>>>        at  
>>>>> javax.management.remote.rmi.RMIConnectionImpl.doOperation 
>>>>> (RMIConnectionImpl.java:1423)
>>>>>        at javax.management.remote.rmi.RMIConnectionImpl.access 
>>>>> $100(RMIConnectionImpl.java:96)
>>>>>        at javax.management.remote.rmi.RMIConnectionImpl 
>>>>> $PrivilegedOperation.run(RMIConnectionImpl.java:1260)
>>>>>        at java.security.AccessController.doPrivileged 
>>>>> (AccessController.java:275)
>>>>>        at  
>>>>> javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperatio 
>>>>> n(RMIConnectionImpl.java:1363)
>>>>>        at javax.management.remote.rmi.RMIConnectionImpl.invoke 
>>>>> (RMIConnectionImpl.java:797)
>>>>>        at sun.reflect.GeneratedMethodAccessor56.invoke(Unknown  
>>>>> Source)
>>>>>        at sun.reflect.DelegatingMethodAccessorImpl.invoke 
>>>>> (DelegatingMethodAccessorImpl.java:43)
>>>>>        at java.lang.reflect.Method.invoke(Method.java:615)
>>>>>        at sun.rmi.server.UnicastServerRef.dispatch 
>>>>> (UnicastServerRef.java:309)
>>>>>        at sun.rmi.transport.Transport$1.run(Transport.java:168)
>>>>>        at java.security.AccessController.doPrivileged 
>>>>> (AccessController.java:275)
>>>>>        at sun.rmi.transport.Transport.serviceCall 
>>>>> (Transport.java:164)
>>>>>        at sun.rmi.transport.tcp.TCPTransport.handleMessages 
>>>>> (TCPTransport.java:506)
>>>>>        at sun.rmi.transport.tcp.TCPTransport 
>>>>> $ConnectionHandler.handleRequest(TCPTransport.java:838)
>>>>>        at sun.rmi.transport.tcp.TCPTransport 
>>>>> $ConnectionHandler.run(TCPTransport.java:912)
>>>>>        at java.lang.Thread.run(Thread.java:799)
>>>>> Caused by:
>>>>> java.lang.NoClassDefFoundError:  
>>>>> com.blazesoft.server.deploy.ejb.session.NdStatelessEjbServerBean
>>>>>        at java.lang.ClassLoader.defineClassImpl(Native Method)
>>>>>        at java.lang.ClassLoader.defineClass(ClassLoader.java:223)
>>>>>        at java.security.SecureClassLoader.defineClass 
>>>>> (SecureClassLoader.java:148)
>>>>>        at  
>>>>> org.apache.geronimo.kernel.classloader.JarFileClassLoader.access 
>>>>> $200(JarFileClassLoader.java:51)
>>>>>        at  
>>>>> org.apache.geronimo.kernel.classloader.JarFileClassLoader$6.run 
>>>>> (JarFileClassLoader.java:275)
>>>>>        at java.security.AccessController.doPrivileged 
>>>>> (AccessController.java:275)
>>>>>        at  
>>>>> org.apache.geronimo.kernel.classloader.JarFileClassLoader.findClas 
>>>>> s(JarFileClassLoader.java:227)
>>>>>        at  
>>>>> org.apache.geronimo.kernel.config.MultiParentClassLoader.loadClass 
>>>>> (MultiParentClassLoader.java:243)
>>>>>        at java.lang.ClassLoader.loadClass(ClassLoader.java:563)
>>>>>        at  
>>>>> org.openejb.deployment.StatelessContainerBuilder.buildIt 
>>>>> (StatelessContainerBuilder.java:97)
>>>>>        at  
>>>>> org.openejb.deployment.AbstractContainerBuilder.createConfiguratio 
>>>>> n(AbstractContainerBuilder.java:354)
>>>>>        at  
>>>>> org.openejb.deployment.SessionBuilder.addEJBContainerGBean 
>>>>> (SessionBuilder.java:313)
>>>>>        ... 58 more
>>>>> 12:17:57,948 DEBUG [ManagerBase] Start expire sessions  
>>>>> StandardManager at 1179505077948 sessioncount 0
>>>>> 12:17:57,948 DEBUG [ManagerBase] End expire sessions  
>>>>> StandardManager processingTime 0 expired sessions: 0
>>>>>
>>>>>> thanks
>>>>>> david jencks
>>>>> No ... Thank You !!
>>>>>
>>>>>
>>>>> Doug
>>>>>
>>>>
>>>>
>>>
>>
>>
>


Re: Web Application Migration to Geronimo

Posted by Doug Lochart <dl...@capecomputing.com>.
David Jencks wrote:
> I don't see any obvious way this could be happening.  I would 
> investigate by putting a breakpoint just before where the exception is 
> thrown and looking at the classloader and what is being loaded in the 
> debugger.
>
Believe it or not I don't use Eclipse or other IDE ... except for the 
debugger aspect I despise them.  My fingers and mind are trained for 
emacs thus I rarely use IDE's unless I need a debugger.  So that being 
said how painful is it to setup geronimo under Eclipse or other 
debugger?  Is there an easy step by step process to do this some where 
posted?  At this point in time I don't really want to take a week just 
to get it running under a debugger.  If it is simple then I will do so.  
Actually if I don't have another option I guess I will have to do so. 

What IDE/Debugger would you suggest is the least painless to use with 
Geronimo?  I tried Eclipse a long time ago and hated the way it forced 
its structure on me.  I don't want to get into a war on IDE's but and 
IDE should never dictate external process or structure.  Okay off my 
soapbox ... any way I happy to do what you suggest.

> Can you think of something that geronimo could do that would make it 
> so you didn't need to debug to solve this problem?
>
Well a thoroughly instrumented flow (as in debug statements) would 
help.  I think this code is JDK 1.5 so you could make use of annotations 
or cglib to intercept methods and add trace debugging that way but just 
entering and leaving methods would not suffice for this problem.  I did 
not see a whole lot of debug statements in the class where the exception 
occurs so I could not see the values for the arguments to the methods 
that were being called.

Maybe on these types of exceptions (class loading) maybe when the log4j 
debug level is set to trace you could possibly create a hierarchical 
dump of the classloaders and what they have as their classpath?  I 
haven't written a classloader in a year or three so I forget what is at 
your disposal but a good environment dump with effective classpath 
information is always helpful.

If you are familiar with Tapestry the exception mechanism is pretty nice 
albeit its geared for a web exception but you get the whole state of the 
system regarding that page and it makes tracing thr problem very easy.
> thanks
> david jencks
>
Thanks David.

I have a question ... if the class that is causing the exception depends 
on another class that is not available to the classloader wil lyou still 
get the same exception or would you  be pointing to the truly offending 
class?   I am just wondering if the tool I am using aggregated all of 
the proper stuff for the task.

> On May 19, 2007, at 7:09 AM, Doug Lochart wrote:
>
>> David or anyone else,
>>
>> Have you had any chance to look at the full stack trace of my 
>> exception yet?  Here it is again.
>>>>
>>>> 12:17:31,183 DEBUG [Configuration] Started configuration 
>>>> france/FrancePolicyServerEar/1.0/car
>>>> 12:17:32,803 DEBUG [Configuration] Stopping configuration 
>>>> france/FrancePolicyServerEar/1.0/car
>>>> 12:17:32,816 ERROR [Deployer] Deployment failed: 
>>>> plan=/mnt/steve_d/Blaze65/deployfrancepolicy/./geronimo-application.xml, 
>>>> module=/mnt/steve_d/Blaze65/deployfrancepolicy/FrancePolicyServer.ear
>>>> org.apache.geronimo.common.DeploymentException: Unable to 
>>>> initialize EJBContainer GBean: ejbNameFrancePolicyServer
>>>>        at 
>>>> org.openejb.deployment.SessionBuilder.addEJBContainerGBean(SessionBuilder.java:315) 
>>>>
>>>>        at 
>>>> org.openejb.deployment.SessionBuilder.buildBeans(SessionBuilder.java:192) 
>>>>
>>>>        at 
>>>> org.openejb.deployment.OpenEJBModuleBuilder.addGBeans(OpenEJBModuleBuilder.java:514) 
>>>>
>>>>        at 
>>>> org.openejb.deployment.OpenEJBModuleBuilder$$FastClassByCGLIB$$11bd7b20.invoke(<generated>) 
>>>>
>>>>        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>>>>        at 
>>>> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38) 
>>>>
>>>>        at 
>>>> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122) 
>>>>
>>>>        at 
>>>> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:817) 
>>>>
>>>>        at 
>>>> org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:57) 
>>>>
>>>>        at 
>>>> org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke(RawOperationInvoker.java:35) 
>>>>
>>>>        at 
>>>> org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept(ProxyMethodInterceptor.java:96) 
>>>>
>>>>        at 
>>>> org.apache.geronimo.j2ee.deployment.ModuleBuilder$$EnhancerByCGLIB$$7afc2c82.addGBeans(<generated>) 
>>>>
>>>>        at 
>>>> org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfiguration(EARConfigBuilder.java:562) 
>>>>
>>>>        at 
>>>> org.apache.geronimo.j2ee.deployment.EARConfigBuilder$$FastClassByCGLIB$$38e56ec6.invoke(<generated>) 
>>>>
>>>>        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>>>>        at 
>>>> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38) 
>>>>
>>>>        at 
>>>> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122) 
>>>>
>>>>        at 
>>>> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:817) 
>>>>
>>>>        at 
>>>> org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:57) 
>>>>
>>>>        at 
>>>> org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke(RawOperationInvoker.java:35) 
>>>>
>>>>        at 
>>>> org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept(ProxyMethodInterceptor.java:96) 
>>>>
>>>>        at 
>>>> org.apache.geronimo.deployment.ConfigurationBuilder$$EnhancerByCGLIB$$86e934f4.buildConfiguration(<generated>) 
>>>>
>>>>        at 
>>>> org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:302)
>>>>        at 
>>>> org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:124)
>>>>        at 
>>>> org.apache.geronimo.deployment.Deployer$$FastClassByCGLIB$$734a235d.invoke(<generated>) 
>>>>
>>>>        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>>>>        at 
>>>> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38) 
>>>>
>>>>        at 
>>>> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122) 
>>>>
>>>>        at 
>>>> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:852) 
>>>>
>>>>        at 
>>>> org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:239) 
>>>>
>>>>        at 
>>>> org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:338)
>>>>        at 
>>>> org.apache.geronimo.kernel.KernelGBean$$FastClassByCGLIB$$1cccefc9.invoke(<generated>) 
>>>>
>>>>        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>>>>        at 
>>>> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38) 
>>>>
>>>>        at 
>>>> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122) 
>>>>
>>>>        at 
>>>> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:852) 
>>>>
>>>>        at 
>>>> org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:239) 
>>>>
>>>>        at 
>>>> org.apache.geronimo.system.jmx.MBeanGBeanBridge.invoke(MBeanGBeanBridge.java:168) 
>>>>
>>>>        at 
>>>> com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke(DynamicMetaDataImpl.java:231) 
>>>>
>>>>        at 
>>>> com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java:238)
>>>>        at 
>>>> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:833) 
>>>>
>>>>        at 
>>>> com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:802)
>>>>        at 
>>>> javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1423) 
>>>>
>>>>        at 
>>>> javax.management.remote.rmi.RMIConnectionImpl.access$100(RMIConnectionImpl.java:96) 
>>>>
>>>>        at 
>>>> javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1260) 
>>>>
>>>>        at 
>>>> java.security.AccessController.doPrivileged(AccessController.java:275)
>>>>        at 
>>>> javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1363) 
>>>>
>>>>        at 
>>>> javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:797) 
>>>>
>>>>        at sun.reflect.GeneratedMethodAccessor56.invoke(Unknown Source)
>>>>        at 
>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
>>>>
>>>>        at java.lang.reflect.Method.invoke(Method.java:615)
>>>>        at 
>>>> sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:309)
>>>>        at sun.rmi.transport.Transport$1.run(Transport.java:168)
>>>>        at 
>>>> java.security.AccessController.doPrivileged(AccessController.java:275)
>>>>        at sun.rmi.transport.Transport.serviceCall(Transport.java:164)
>>>>        at 
>>>> sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:506) 
>>>>
>>>>        at 
>>>> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.handleRequest(TCPTransport.java:838) 
>>>>
>>>>        at 
>>>> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:912) 
>>>>
>>>>        at java.lang.Thread.run(Thread.java:799)
>>>> Caused by:
>>>> java.lang.NoClassDefFoundError: 
>>>> com.blazesoft.server.deploy.ejb.session.NdStatelessEjbServerBean
>>>>        at java.lang.ClassLoader.defineClassImpl(Native Method)
>>>>        at java.lang.ClassLoader.defineClass(ClassLoader.java:223)
>>>>        at 
>>>> java.security.SecureClassLoader.defineClass(SecureClassLoader.java:148) 
>>>>
>>>>        at 
>>>> org.apache.geronimo.kernel.classloader.JarFileClassLoader.access$200(JarFileClassLoader.java:51) 
>>>>
>>>>        at 
>>>> org.apache.geronimo.kernel.classloader.JarFileClassLoader$6.run(JarFileClassLoader.java:275) 
>>>>
>>>>        at 
>>>> java.security.AccessController.doPrivileged(AccessController.java:275)
>>>>        at 
>>>> org.apache.geronimo.kernel.classloader.JarFileClassLoader.findClass(JarFileClassLoader.java:227) 
>>>>
>>>>        at 
>>>> org.apache.geronimo.kernel.config.MultiParentClassLoader.loadClass(MultiParentClassLoader.java:243) 
>>>>
>>>>        at java.lang.ClassLoader.loadClass(ClassLoader.java:563)
>>>>        at 
>>>> org.openejb.deployment.StatelessContainerBuilder.buildIt(StatelessContainerBuilder.java:97) 
>>>>
>>>>        at 
>>>> org.openejb.deployment.AbstractContainerBuilder.createConfiguration(AbstractContainerBuilder.java:354) 
>>>>
>>>>        at 
>>>> org.openejb.deployment.SessionBuilder.addEJBContainerGBean(SessionBuilder.java:313) 
>>>>
>>>>        ... 58 more
>>>> 12:17:57,948 DEBUG [ManagerBase] Start expire sessions 
>>>> StandardManager at 1179505077948 sessioncount 0
>>>> 12:17:57,948 DEBUG [ManagerBase] End expire sessions 
>>>> StandardManager processingTime 0 expired sessions: 0
>>>>
>>>>> thanks
>>>>> david jencks
>>>> No ... Thank You !!
>>>>
>>>>
>>>> Doug
>>>>
>>>
>>>
>>
>
>


Re: Web Application Migration to Geronimo

Posted by David Jencks <da...@yahoo.com>.
I don't see any obvious way this could be happening.  I would  
investigate by putting a breakpoint just before where the exception  
is thrown and looking at the classloader and what is being loaded in  
the debugger.

Can you think of something that geronimo could do that would make it  
so you didn't need to debug to solve this problem?

thanks
david jencks

On May 19, 2007, at 7:09 AM, Doug Lochart wrote:

> David or anyone else,
>
> Have you had any chance to look at the full stack trace of my  
> exception yet?  Here it is again.
>>>
>>> 12:17:31,183 DEBUG [Configuration] Started configuration france/ 
>>> FrancePolicyServerEar/1.0/car
>>> 12:17:32,803 DEBUG [Configuration] Stopping configuration france/ 
>>> FrancePolicyServerEar/1.0/car
>>> 12:17:32,816 ERROR [Deployer] Deployment failed: plan=/mnt/ 
>>> steve_d/Blaze65/deployfrancepolicy/./geronimo-application.xml,  
>>> module=/mnt/steve_d/Blaze65/deployfrancepolicy/ 
>>> FrancePolicyServer.ear
>>> org.apache.geronimo.common.DeploymentException: Unable to  
>>> initialize EJBContainer GBean: ejbNameFrancePolicyServer
>>>        at  
>>> org.openejb.deployment.SessionBuilder.addEJBContainerGBean 
>>> (SessionBuilder.java:315)
>>>        at org.openejb.deployment.SessionBuilder.buildBeans 
>>> (SessionBuilder.java:192)
>>>        at org.openejb.deployment.OpenEJBModuleBuilder.addGBeans 
>>> (OpenEJBModuleBuilder.java:514)
>>>        at org.openejb.deployment.OpenEJBModuleBuilder$ 
>>> $FastClassByCGLIB$$11bd7b20.invoke(<generated>)
>>>        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>>>        at  
>>> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke 
>>> (FastMethodInvoker.java:38)
>>>        at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke 
>>> (GBeanOperation.java:122)
>>>        at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke 
>>> (GBeanInstance.java:817)
>>>        at org.apache.geronimo.gbean.runtime.RawInvoker.invoke 
>>> (RawInvoker.java:57)
>>>        at  
>>> org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke 
>>> (RawOperationInvoker.java:35)
>>>        at  
>>> org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept 
>>> (ProxyMethodInterceptor.java:96)
>>>        at org.apache.geronimo.j2ee.deployment.ModuleBuilder$ 
>>> $EnhancerByCGLIB$$7afc2c82.addGBeans(<generated>)
>>>        at  
>>> org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfigurat 
>>> ion(EARConfigBuilder.java:562)
>>>        at org.apache.geronimo.j2ee.deployment.EARConfigBuilder$ 
>>> $FastClassByCGLIB$$38e56ec6.invoke(<generated>)
>>>        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>>>        at  
>>> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke 
>>> (FastMethodInvoker.java:38)
>>>        at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke 
>>> (GBeanOperation.java:122)
>>>        at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke 
>>> (GBeanInstance.java:817)
>>>        at org.apache.geronimo.gbean.runtime.RawInvoker.invoke 
>>> (RawInvoker.java:57)
>>>        at  
>>> org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke 
>>> (RawOperationInvoker.java:35)
>>>        at  
>>> org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept 
>>> (ProxyMethodInterceptor.java:96)
>>>        at org.apache.geronimo.deployment.ConfigurationBuilder$ 
>>> $EnhancerByCGLIB$$86e934f4.buildConfiguration(<generated>)
>>>        at org.apache.geronimo.deployment.Deployer.deploy 
>>> (Deployer.java:302)
>>>        at org.apache.geronimo.deployment.Deployer.deploy 
>>> (Deployer.java:124)
>>>        at org.apache.geronimo.deployment.Deployer$ 
>>> $FastClassByCGLIB$$734a235d.invoke(<generated>)
>>>        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>>>        at  
>>> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke 
>>> (FastMethodInvoker.java:38)
>>>        at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke 
>>> (GBeanOperation.java:122)
>>>        at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke 
>>> (GBeanInstance.java:852)
>>>        at org.apache.geronimo.kernel.basic.BasicKernel.invoke 
>>> (BasicKernel.java:239)
>>>        at org.apache.geronimo.kernel.KernelGBean.invoke 
>>> (KernelGBean.java:338)
>>>        at org.apache.geronimo.kernel.KernelGBean$$FastClassByCGLIB 
>>> $$1cccefc9.invoke(<generated>)
>>>        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>>>        at  
>>> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke 
>>> (FastMethodInvoker.java:38)
>>>        at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke 
>>> (GBeanOperation.java:122)
>>>        at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke 
>>> (GBeanInstance.java:852)
>>>        at org.apache.geronimo.kernel.basic.BasicKernel.invoke 
>>> (BasicKernel.java:239)
>>>        at org.apache.geronimo.system.jmx.MBeanGBeanBridge.invoke 
>>> (MBeanGBeanBridge.java:168)
>>>        at com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke 
>>> (DynamicMetaDataImpl.java:231)
>>>        at com.sun.jmx.mbeanserver.MetaDataImpl.invoke 
>>> (MetaDataImpl.java:238)
>>>        at  
>>> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke 
>>> (DefaultMBeanServerInterceptor.java:833)
>>>        at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke 
>>> (JmxMBeanServer.java:802)
>>>        at  
>>> javax.management.remote.rmi.RMIConnectionImpl.doOperation 
>>> (RMIConnectionImpl.java:1423)
>>>        at javax.management.remote.rmi.RMIConnectionImpl.access$100 
>>> (RMIConnectionImpl.java:96)
>>>        at javax.management.remote.rmi.RMIConnectionImpl 
>>> $PrivilegedOperation.run(RMIConnectionImpl.java:1260)
>>>        at java.security.AccessController.doPrivileged 
>>> (AccessController.java:275)
>>>        at  
>>> javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation( 
>>> RMIConnectionImpl.java:1363)
>>>        at javax.management.remote.rmi.RMIConnectionImpl.invoke 
>>> (RMIConnectionImpl.java:797)
>>>        at sun.reflect.GeneratedMethodAccessor56.invoke(Unknown  
>>> Source)
>>>        at sun.reflect.DelegatingMethodAccessorImpl.invoke 
>>> (DelegatingMethodAccessorImpl.java:43)
>>>        at java.lang.reflect.Method.invoke(Method.java:615)
>>>        at sun.rmi.server.UnicastServerRef.dispatch 
>>> (UnicastServerRef.java:309)
>>>        at sun.rmi.transport.Transport$1.run(Transport.java:168)
>>>        at java.security.AccessController.doPrivileged 
>>> (AccessController.java:275)
>>>        at sun.rmi.transport.Transport.serviceCall(Transport.java: 
>>> 164)
>>>        at sun.rmi.transport.tcp.TCPTransport.handleMessages 
>>> (TCPTransport.java:506)
>>>        at sun.rmi.transport.tcp.TCPTransport 
>>> $ConnectionHandler.handleRequest(TCPTransport.java:838)
>>>        at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run 
>>> (TCPTransport.java:912)
>>>        at java.lang.Thread.run(Thread.java:799)
>>> Caused by:
>>> java.lang.NoClassDefFoundError:  
>>> com.blazesoft.server.deploy.ejb.session.NdStatelessEjbServerBean
>>>        at java.lang.ClassLoader.defineClassImpl(Native Method)
>>>        at java.lang.ClassLoader.defineClass(ClassLoader.java:223)
>>>        at java.security.SecureClassLoader.defineClass 
>>> (SecureClassLoader.java:148)
>>>        at  
>>> org.apache.geronimo.kernel.classloader.JarFileClassLoader.access 
>>> $200(JarFileClassLoader.java:51)
>>>        at  
>>> org.apache.geronimo.kernel.classloader.JarFileClassLoader$6.run 
>>> (JarFileClassLoader.java:275)
>>>        at java.security.AccessController.doPrivileged 
>>> (AccessController.java:275)
>>>        at  
>>> org.apache.geronimo.kernel.classloader.JarFileClassLoader.findClass( 
>>> JarFileClassLoader.java:227)
>>>        at  
>>> org.apache.geronimo.kernel.config.MultiParentClassLoader.loadClass 
>>> (MultiParentClassLoader.java:243)
>>>        at java.lang.ClassLoader.loadClass(ClassLoader.java:563)
>>>        at org.openejb.deployment.StatelessContainerBuilder.buildIt 
>>> (StatelessContainerBuilder.java:97)
>>>        at  
>>> org.openejb.deployment.AbstractContainerBuilder.createConfiguration( 
>>> AbstractContainerBuilder.java:354)
>>>        at  
>>> org.openejb.deployment.SessionBuilder.addEJBContainerGBean 
>>> (SessionBuilder.java:313)
>>>        ... 58 more
>>> 12:17:57,948 DEBUG [ManagerBase] Start expire sessions  
>>> StandardManager at 1179505077948 sessioncount 0
>>> 12:17:57,948 DEBUG [ManagerBase] End expire sessions  
>>> StandardManager processingTime 0 expired sessions: 0
>>>
>>>> thanks
>>>> david jencks
>>> No ... Thank You !!
>>>
>>>
>>> Doug
>>>
>>
>>
>


Re: Web Application Migration to Geronimo

Posted by Doug Lochart <dl...@capecomputing.com>.
David or anyone else,

Have you had any chance to look at the full stack trace of my exception 
yet?  Here it is again.
>>
>> 12:17:31,183 DEBUG [Configuration] Started configuration 
>> france/FrancePolicyServerEar/1.0/car
>> 12:17:32,803 DEBUG [Configuration] Stopping configuration 
>> france/FrancePolicyServerEar/1.0/car
>> 12:17:32,816 ERROR [Deployer] Deployment failed: 
>> plan=/mnt/steve_d/Blaze65/deployfrancepolicy/./geronimo-application.xml, 
>> module=/mnt/steve_d/Blaze65/deployfrancepolicy/FrancePolicyServer.ear
>> org.apache.geronimo.common.DeploymentException: Unable to initialize 
>> EJBContainer GBean: ejbNameFrancePolicyServer
>>        at 
>> org.openejb.deployment.SessionBuilder.addEJBContainerGBean(SessionBuilder.java:315) 
>>
>>        at 
>> org.openejb.deployment.SessionBuilder.buildBeans(SessionBuilder.java:192) 
>>
>>        at 
>> org.openejb.deployment.OpenEJBModuleBuilder.addGBeans(OpenEJBModuleBuilder.java:514) 
>>
>>        at 
>> org.openejb.deployment.OpenEJBModuleBuilder$$FastClassByCGLIB$$11bd7b20.invoke(<generated>) 
>>
>>        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>>        at 
>> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38) 
>>
>>        at 
>> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122) 
>>
>>        at 
>> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:817) 
>>
>>        at 
>> org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:57)
>>        at 
>> org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke(RawOperationInvoker.java:35) 
>>
>>        at 
>> org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept(ProxyMethodInterceptor.java:96) 
>>
>>        at 
>> org.apache.geronimo.j2ee.deployment.ModuleBuilder$$EnhancerByCGLIB$$7afc2c82.addGBeans(<generated>) 
>>
>>        at 
>> org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfiguration(EARConfigBuilder.java:562) 
>>
>>        at 
>> org.apache.geronimo.j2ee.deployment.EARConfigBuilder$$FastClassByCGLIB$$38e56ec6.invoke(<generated>) 
>>
>>        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>>        at 
>> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38) 
>>
>>        at 
>> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122) 
>>
>>        at 
>> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:817) 
>>
>>        at 
>> org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:57)
>>        at 
>> org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke(RawOperationInvoker.java:35) 
>>
>>        at 
>> org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept(ProxyMethodInterceptor.java:96) 
>>
>>        at 
>> org.apache.geronimo.deployment.ConfigurationBuilder$$EnhancerByCGLIB$$86e934f4.buildConfiguration(<generated>) 
>>
>>        at 
>> org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:302)
>>        at 
>> org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:124)
>>        at 
>> org.apache.geronimo.deployment.Deployer$$FastClassByCGLIB$$734a235d.invoke(<generated>) 
>>
>>        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>>        at 
>> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38) 
>>
>>        at 
>> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122) 
>>
>>        at 
>> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:852) 
>>
>>        at 
>> org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:239) 
>>
>>        at 
>> org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:338)
>>        at 
>> org.apache.geronimo.kernel.KernelGBean$$FastClassByCGLIB$$1cccefc9.invoke(<generated>) 
>>
>>        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>>        at 
>> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38) 
>>
>>        at 
>> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122) 
>>
>>        at 
>> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:852) 
>>
>>        at 
>> org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:239) 
>>
>>        at 
>> org.apache.geronimo.system.jmx.MBeanGBeanBridge.invoke(MBeanGBeanBridge.java:168) 
>>
>>        at 
>> com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke(DynamicMetaDataImpl.java:231) 
>>
>>        at 
>> com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java:238)
>>        at 
>> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:833) 
>>
>>        at 
>> com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:802)
>>        at 
>> javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1423) 
>>
>>        at 
>> javax.management.remote.rmi.RMIConnectionImpl.access$100(RMIConnectionImpl.java:96) 
>>
>>        at 
>> javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1260) 
>>
>>        at 
>> java.security.AccessController.doPrivileged(AccessController.java:275)
>>        at 
>> javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1363) 
>>
>>        at 
>> javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:797) 
>>
>>        at sun.reflect.GeneratedMethodAccessor56.invoke(Unknown Source)
>>        at 
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
>>
>>        at java.lang.reflect.Method.invoke(Method.java:615)
>>        at 
>> sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:309)
>>        at sun.rmi.transport.Transport$1.run(Transport.java:168)
>>        at 
>> java.security.AccessController.doPrivileged(AccessController.java:275)
>>        at sun.rmi.transport.Transport.serviceCall(Transport.java:164)
>>        at 
>> sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:506)
>>        at 
>> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.handleRequest(TCPTransport.java:838) 
>>
>>        at 
>> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:912) 
>>
>>        at java.lang.Thread.run(Thread.java:799)
>> Caused by:
>> java.lang.NoClassDefFoundError: 
>> com.blazesoft.server.deploy.ejb.session.NdStatelessEjbServerBean
>>        at java.lang.ClassLoader.defineClassImpl(Native Method)
>>        at java.lang.ClassLoader.defineClass(ClassLoader.java:223)
>>        at 
>> java.security.SecureClassLoader.defineClass(SecureClassLoader.java:148)
>>        at 
>> org.apache.geronimo.kernel.classloader.JarFileClassLoader.access$200(JarFileClassLoader.java:51) 
>>
>>        at 
>> org.apache.geronimo.kernel.classloader.JarFileClassLoader$6.run(JarFileClassLoader.java:275) 
>>
>>        at 
>> java.security.AccessController.doPrivileged(AccessController.java:275)
>>        at 
>> org.apache.geronimo.kernel.classloader.JarFileClassLoader.findClass(JarFileClassLoader.java:227) 
>>
>>        at 
>> org.apache.geronimo.kernel.config.MultiParentClassLoader.loadClass(MultiParentClassLoader.java:243) 
>>
>>        at java.lang.ClassLoader.loadClass(ClassLoader.java:563)
>>        at 
>> org.openejb.deployment.StatelessContainerBuilder.buildIt(StatelessContainerBuilder.java:97) 
>>
>>        at 
>> org.openejb.deployment.AbstractContainerBuilder.createConfiguration(AbstractContainerBuilder.java:354) 
>>
>>        at 
>> org.openejb.deployment.SessionBuilder.addEJBContainerGBean(SessionBuilder.java:313) 
>>
>>        ... 58 more
>> 12:17:57,948 DEBUG [ManagerBase] Start expire sessions 
>> StandardManager at 1179505077948 sessioncount 0
>> 12:17:57,948 DEBUG [ManagerBase] End expire sessions StandardManager 
>> processingTime 0 expired sessions: 0
>>
>>> thanks
>>> david jencks
>> No ... Thank You !!
>>
>>
>> Doug
>>
>
>


Re: Web Application Migration to Geronimo

Posted by David Jencks <da...@yahoo.com>.
On May 18, 2007, at 10:01 AM, Doug Lochart wrote:

> Hack, Hack, Hack ... Yes I have been hacking away =)  I may have  
> made some progress (or regression not sure)  Quickly let me answer  
> an earlier question.
>>
>> What exactly do you mean by "web service"? Is this a jaxrpc web  
>> service deployed with all the required j2ee 1.4 xml files such as  
>> the jaxrpc mapping file?
>>
> Yes it is a jaxrpc web service complete with mapping file,  
> webservices.xml, and wsdl.  The webservice is implemented with a  
> generic web service servlet that somehow delegates to the Stateless  
> Session Bean that is in the _EJB.jar.

 From the previous error I think that you have declared the ejb as an  
ejb web service and geronimo is recognizing that and deploying the  
stuff needed to hook it up as a web service, independent of the  
generic web service servlet.  If you don't need the war for any other  
reason I would try removing it, or at least removing the generic web  
service servlet.  This shouldn't change any behavior but should  
simplify what we need to look at.

Also Vamsi's comments jogged my memory-- I think in early versions of  
geronimo you had to add the axis and perhaps tomcat dependencies  
yourself, although we eventually got the web service deployers to do  
it for you.  You may be using one of these earlier versions.

>
> Let me recap what I have (and thanks for the previous tips, I think  
> they have moved me forward somewhat)
>
> geronimo-application.xml
> --------------------------------------
> <?xml version="1.0" encoding="UTF-8"?>
> <application application-name="FrancePolicyServerEar"
>              xmlns="http://geronimo.apache.org/xml/ns/j2ee/ 
> application-1.1"
>              xmlns:sec="http://geronimo.apache.org/xml/ns/ 
> security-1.1"
>              xmlns:sys="http://geronimo.apache.org/xml/ns/ 
> deployment-1.1">
>  <sys:environment>
>    <sys:moduleId>
>      <sys:groupId>france</sys:groupId>
>      <sys:artifactId>FrancePolicyServerEar</sys:artifactId>
>      <sys:version>1.0</sys:version>
>      <sys:type>car</sys:type>
>    </sys:moduleId>
>    <sys:dependencies>
>      <sys:dependency>
>      <sys:groupId>geronimo</sys:groupId>
>      <sys:artifactId>axis</sys:artifactId>
>      <sys:type>car</sys:type>
>      </sys:dependency>
>    </sys:dependencies>
>    <sys:hidden-classes/>
>    <sys:non-overridable-classes/>
>  </sys:environment>
> </application>
>
> I created an open-ejb.jar plan and included that in the _EJB.jar  
> under META-INF.  Here is its contents
> ---------------------------------------------------------------------- 
> --------------------------------------------------------------
> <openejb-jar xmlns="http://www.openejb.org/xml/ns/openejb-jar-2.1">
>  <dep:environment xmlns:dep="http://geronimo.apache.org/xml/ns/ 
> deployment-1.1">
>    <dep:moduleId>
>      <dep:groupId>qdfrancepolicy.</dep:groupId>
>      <dep:artifactId>FrancePolicyServverEjb</dep:artifactId>
>      <dep:version>1.0</dep:version>
>      <dep:type>car</dep:type>
>    </dep:moduleId>
>    <dep:dependencies>
>      <dep:dependency>
>        <dep:groupId>geronimo</dep:groupId>
>        <dep:artifactId>tomcat</dep:artifactId>
>        <dep:type>car</dep:type>
>      </dep:dependency>
>    </dep:dependencies>
>    <dep:hidden-classes/>
>    <dep:non-overridable-classes/>
>  </dep:environment>
>  <enterprise-beans>
>    <session>
>      <ejb-name>FrancePolicyServer</ejb-name>
>      <jndi-name>qdfrancepolicy.FrancePolicyHome</jndi-name>
>    </session>
>  </enterprise-beans>
> </openejb-jar>
>
> I also took the suggestion to remove my geronimo-web.xml from the  
> WAR and did that.  Now I am getting this Exception
>
> Look at the Caused By Exception
>
> org.apache.geronimo.common.DeploymentException: Unable to  
> initialize EJBContainer GBean: ejbNameFrancePolicyServer
>        at org.openejb.deployment.SessionBuilder.addEJBContainerGBean 
> (SessionBuilder.java:315)
>        at org.openejb.deployment.SessionBuilder.buildBeans 
> (SessionBuilder.java:192)
>        at org.openejb.deployment.OpenEJBModuleBuilder.addGBeans 
> (OpenEJBModuleBuilder.java:514)
>        at org.openejb.deployment.OpenEJBModuleBuilder$ 
> $FastClassByCGLIB$$11bd7b20.invoke(<generated>)
>        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
> ....
> Caused by:
> java.lang.NoClassDefFoundError:  
> com.blazesoft.server.deploy.ejb.session.NdStatelessEjbServerBean
> ....
>
> This class is in a Jar included in the Ear.  This is where I am a  
> REAL newb when it comes to EJB/WebServices so please bear with me.   
> I do not know how the classpath for an application involving so  
> many pieces gets comprised.  I assume there is a classpath issue  
> within my ear structure.  Although it looks like it is trying to  
> create GBeans for my EjbBeans and needs the class it cannot find to  
> complete the instrumentation.  Below is my heirarchy of the ear  
> including the Manifests for each archive.  Since a tool built this  
> heirarchy and it supposedly works well in WAS 6.0 I assume there is  
> something in the geronimo specific plans I need to add or do to  
> link up things for the classpath to be correct.
>
> Again thanks for the help given and any to come!!!


The manifest classpath in the ejb jar looks ok to me.  Since you are  
getting a NCDFE rather than ClassNotFoundException it's likely that  
the class is available but we're trying to load it from a parent  
classloader.  Can you supply more of the stack trace?  Are any of  
your classes also in any other classloaders geronimo might be using  
or are they only present in the ear?

thanks
david jencks

>
>
> Layout for FrancePolicyServer.ear
> ---------------------------------
> META-INF/
> META-INF/MANIFEST.MF
> META-INF/application.xml
> META-INF/ibm-application-bnd.xmi
> META-INF/ibm-application-ext.xmi
> AdvCommon.jar
> AdvisorSvr.jar
> FrancePolicyServer_EJB.jar
> FrancePolicyServer_WEB.war
> InnovatorRT.jar
> jaxen.jar
> license.jar
>
> Manifest for EAR
> ...............
> Manifest-Version: 1.0
> Ant-Version: Apache Ant 1.7.0
> Created-By: 2.3 (IBM Corporation)
> Built-By: Blaze Advisor Quick Deployer
>
>
> Layout for FrancePolicyServer_EJB.jar
> -------------------------------------
> META-INF/
> META-INF/MANIFEST.MF
> com/
> com/capecomputing/
> com/capecomputing/france/
> com/capecomputing/france/webservice/
> com/capecomputing/france/webservice/FrancePolicyIF.class
> com/capecomputing/france/webservice/FrancePolicyIFHome.class
> com/capecomputing/france/webservice/FrancePolicyIF_RI.class
> com/capecomputing/france/webservice/ 
> FrancePolicyServiceSoapBindingImpl.class
> META-INF/ejb-jar.xml
> META-INF/ibm-webservices-bnd.xmi
> META-INF/ibm-webservices-ext.xmi
> META-INF/jaxrpc-mapping.xml
> META-INF/openejb-jar.xml
> META-INF/webservices.xml
> META-INF/wsdl/
> META-INF/wsdl/FrancePolicyService.wsdl
> qdfrancepolicy/
> qdfrancepolicy/FrancePolicyBean.class
> qdfrancepolicy/FrancePolicyBusiness.class
> qdfrancepolicy/FrancePolicyHome.class
> qdfrancepolicy/FrancePolicyIF.class
> qdfrancepolicy/FrancePolicyRemote.class
>
> MANIFEST for EJB
> ...............
> Manifest-Version: 1.0
> Created-By: 2.3 (IBM Corporation)
> Class-Path: AdvCommon.jar Advisor.jar AdvisorSvr.jar InnovatorRT.jar
> license.jar jaxen.jar
> Built-By: Blaze Advisor Quick Deployer
> Ant-Version: Apache Ant 1.7.0
>
>
> Layout for WAR
> --------------------------------------
> META-INF/
> META-INF/MANIFEST.MF
> WEB-INF/
> WEB-INF/ibm-web-bnd.xmi
> WEB-INF/ibm-web-ext.xmi
> WEB-INF/web.xml
>
> MANIFEST for WAR
> ...............
> Manifest-Version: 1.0
> Class-Path: FrancePolicyServer_EJB.jar
>
>
>
>


Re: Web Application Migration to Geronimo

Posted by Doug Lochart <dl...@capecomputing.com>.
Hack, Hack, Hack ... Yes I have been hacking away =)  I may have made 
some progress (or regression not sure)  Quickly let me answer an earlier 
question.
>
> What exactly do you mean by "web service"? Is this a jaxrpc web 
> service deployed with all the required j2ee 1.4 xml files such as the 
> jaxrpc mapping file?
>
Yes it is a jaxrpc web service complete with mapping file, 
webservices.xml, and wsdl.  The webservice is implemented with a generic 
web service servlet that somehow delegates to the Stateless Session Bean 
that is in the _EJB.jar.

Let me recap what I have (and thanks for the previous tips, I think they 
have moved me forward somewhat)

geronimo-application.xml
--------------------------------------
<?xml version="1.0" encoding="UTF-8"?>
<application application-name="FrancePolicyServerEar"
              xmlns="http://geronimo.apache.org/xml/ns/j2ee/application-1.1"
              xmlns:sec="http://geronimo.apache.org/xml/ns/security-1.1"
              xmlns:sys="http://geronimo.apache.org/xml/ns/deployment-1.1">
  <sys:environment>
    <sys:moduleId>
      <sys:groupId>france</sys:groupId>
      <sys:artifactId>FrancePolicyServerEar</sys:artifactId>
      <sys:version>1.0</sys:version>
      <sys:type>car</sys:type>
    </sys:moduleId>
    <sys:dependencies>
      <sys:dependency>
      <sys:groupId>geronimo</sys:groupId>
      <sys:artifactId>axis</sys:artifactId>
      <sys:type>car</sys:type>
      </sys:dependency>
    </sys:dependencies>
    <sys:hidden-classes/>
    <sys:non-overridable-classes/>
  </sys:environment>
</application>

I created an open-ejb.jar plan and included that in the _EJB.jar under 
META-INF.  Here is its contents
------------------------------------------------------------------------------------------------------------------------------------
<openejb-jar xmlns="http://www.openejb.org/xml/ns/openejb-jar-2.1">
  <dep:environment 
xmlns:dep="http://geronimo.apache.org/xml/ns/deployment-1.1">
    <dep:moduleId>
      <dep:groupId>qdfrancepolicy.</dep:groupId>
      <dep:artifactId>FrancePolicyServverEjb</dep:artifactId>
      <dep:version>1.0</dep:version>
      <dep:type>car</dep:type>
    </dep:moduleId>
    <dep:dependencies>
      <dep:dependency>
        <dep:groupId>geronimo</dep:groupId>
        <dep:artifactId>tomcat</dep:artifactId>
        <dep:type>car</dep:type>
      </dep:dependency>
    </dep:dependencies>
    <dep:hidden-classes/>
    <dep:non-overridable-classes/>
  </dep:environment>
  <enterprise-beans>
    <session>
      <ejb-name>FrancePolicyServer</ejb-name>
      <jndi-name>qdfrancepolicy.FrancePolicyHome</jndi-name>
    </session>
  </enterprise-beans>
</openejb-jar>

I also took the suggestion to remove my geronimo-web.xml from the WAR 
and did that.  Now I am getting this Exception

Look at the Caused By Exception

org.apache.geronimo.common.DeploymentException: Unable to initialize 
EJBContainer GBean: ejbNameFrancePolicyServer
        at 
org.openejb.deployment.SessionBuilder.addEJBContainerGBean(SessionBuilder.java:315)
        at 
org.openejb.deployment.SessionBuilder.buildBeans(SessionBuilder.java:192)
        at 
org.openejb.deployment.OpenEJBModuleBuilder.addGBeans(OpenEJBModuleBuilder.java:514)
        at 
org.openejb.deployment.OpenEJBModuleBuilder$$FastClassByCGLIB$$11bd7b20.invoke(<generated>)
        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
....
Caused by:
java.lang.NoClassDefFoundError: 
com.blazesoft.server.deploy.ejb.session.NdStatelessEjbServerBean
....

This class is in a Jar included in the Ear.  This is where I am a REAL 
newb when it comes to EJB/WebServices so please bear with me.  I do not 
know how the classpath for an application involving so many pieces gets 
comprised.  I assume there is a classpath issue within my ear 
structure.  Although it looks like it is trying to create GBeans for my 
EjbBeans and needs the class it cannot find to complete the 
instrumentation.  Below is my heirarchy of the ear including the 
Manifests for each archive.  Since a tool built this heirarchy and it 
supposedly works well in WAS 6.0 I assume there is something in the 
geronimo specific plans I need to add or do to link up things for the 
classpath to be correct.

Again thanks for the help given and any to come!!!


Layout for FrancePolicyServer.ear
---------------------------------
META-INF/
META-INF/MANIFEST.MF
META-INF/application.xml
META-INF/ibm-application-bnd.xmi
META-INF/ibm-application-ext.xmi
AdvCommon.jar
AdvisorSvr.jar
FrancePolicyServer_EJB.jar
FrancePolicyServer_WEB.war
InnovatorRT.jar
jaxen.jar
license.jar

Manifest for EAR
...............
Manifest-Version: 1.0
Ant-Version: Apache Ant 1.7.0
Created-By: 2.3 (IBM Corporation)
Built-By: Blaze Advisor Quick Deployer


Layout for FrancePolicyServer_EJB.jar
-------------------------------------
META-INF/
META-INF/MANIFEST.MF
com/
com/capecomputing/
com/capecomputing/france/
com/capecomputing/france/webservice/
com/capecomputing/france/webservice/FrancePolicyIF.class
com/capecomputing/france/webservice/FrancePolicyIFHome.class
com/capecomputing/france/webservice/FrancePolicyIF_RI.class
com/capecomputing/france/webservice/FrancePolicyServiceSoapBindingImpl.class
META-INF/ejb-jar.xml
META-INF/ibm-webservices-bnd.xmi
META-INF/ibm-webservices-ext.xmi
META-INF/jaxrpc-mapping.xml
META-INF/openejb-jar.xml
META-INF/webservices.xml
META-INF/wsdl/
META-INF/wsdl/FrancePolicyService.wsdl
qdfrancepolicy/
qdfrancepolicy/FrancePolicyBean.class
qdfrancepolicy/FrancePolicyBusiness.class
qdfrancepolicy/FrancePolicyHome.class
qdfrancepolicy/FrancePolicyIF.class
qdfrancepolicy/FrancePolicyRemote.class

MANIFEST for EJB
...............
Manifest-Version: 1.0
Created-By: 2.3 (IBM Corporation)
Class-Path: AdvCommon.jar Advisor.jar AdvisorSvr.jar InnovatorRT.jar
 license.jar jaxen.jar
Built-By: Blaze Advisor Quick Deployer
Ant-Version: Apache Ant 1.7.0


Layout for WAR
--------------------------------------
META-INF/
META-INF/MANIFEST.MF
WEB-INF/
WEB-INF/ibm-web-bnd.xmi
WEB-INF/ibm-web-ext.xmi
WEB-INF/web.xml

MANIFEST for WAR
...............
Manifest-Version: 1.0
Class-Path: FrancePolicyServer_EJB.jar





Re: Web Application Migration to Geronimo

Posted by Vamsavardhana Reddy <c1...@gmail.com>.
That reminds me...  The dependency on geronimo/axis/car was required
in my web app that invoked web services.  Adding dependency on
geronimo/tomcat/car resolved the deployment problem for my ejb app
that provided the web services.

Vamsi

On 5/18/07, David Jencks <da...@yahoo.com> wrote:
>
> On May 16, 2007, at 11:09 AM, Doug Lochart wrote:
>
> > Actually it is to the WebSphere Application Server Community
> > Edition which runs Geronimo pre-wired  with Tomcat.
> >
> > I have a web application deployed as an EAR  (Stateless Session EJB
> > (in ejb_jar) , Servlet(in .WAR) ) that combined is a WebService.  I
> > did not write the Application and I am real new to Web Services.
>
> What exactly do you mean by "web service"? Is this a jaxrpc web
> service deployed with all the required j2ee 1.4 xml files such as the
> jaxrpc mapping file?
>
> >   My task is to deploy this web application to WAS CE (Geronimo).
> > I tried simply deploying it as is but of course it failed giving me
> > an error like this:
> >
> >
> > Error: Unable to distribute FrancePolicyServer.ear: Unable to
> >    resolve reference "WebServiceContainer" in gbean
> >    default/Application_ID/1179336634177/car?
> > EJBModule=FrancePolicyServer_EJB.jar,J2EEApplication=default/
> > Application_ID/1179336634177/
> > car,StatelessSessionBean=FrancePolicyServer,j2eeType=WSLink,name=Franc
> > ePolicyServer
> >    to a gbean matching the pattern [?name=TomcatWebContainer#]
> >
> > First of all any idea what this error means?  I am sure it is a
> > need for a plan but I would like to understand what is happening.
>
> I'm surprised you are getting this error.  The gbean it's looking for
> is in the tomcat configuration, so you might try adding the tomcat
> car as a dependency of the ejb jar (not the web module war file) or
> the ear.  However, the web service deployer is supposed to be adding
> this dependency for you.
> Something like this:
>
>       <dep:dependency>
>          <dep:groupId>geronimo</dep:groupId>
>          <dep:artifactId>tomcat</dep:artifactId>
>          <dep:type>car</dep:type>
>       </dep:dependency>
>
>
> One thing to beware of is that jaxrpc web services either have to be
> extremely simple so they don't need a jaxrpc mapping file or you have
> to come up with a jaxrpc mapping file, something for which we don't
> have any tools.  Geronimo is quite strict about what it will accept
> in a jaxrpc mapping file, so its possible that something that works
> on another server won't work in geronimo.  However I don't see how
> this could result in the error you are seeing.  I would not have the
> patience to try to get a non-trivial jaxrpc web service to work, I
> would convert it to a jaxws web service and use a geronimo 2.0 snapshot.
>
> thanks
> david jencks
>
>
> >
> > I have read through several developerworks articles and numerous
> > examples on geronimo (looks like a kick a$$ product by the way, I
> > like the IoC design) and from what I gather I need to provide 1 or
> > more extra deployment descriptors/deployment plans specific for
> > geronimo.  I was hoping for a good example of these plans so that I
> > could hack it up and do some trial and error to learn but I still
> > feel I lack the knowledge to even start down the right path.  I
> > don't know which ones I need and how to construct them.
> >
> > So what I am asking is based on my application I described what
> > types of geronimo specific xml files do I need?
> >
> > According to the docs it looks like I need a geronimo-
> > application.xml as a deployment plan but I did not see a good
> > example of that and I was left feeling that I am missing something
> > for the Web Service.  In the META-INF directory of the ejb-jar file
> > I see my webservices.xml and a mapping.xml and also 2 ibm (was 6.0)
> > specific binding files  ibm-webservices-ext.xmi and ibm-webservices-
> > bnd.xmi which I have no clue how they come into play.  I do know
> > that the Servlet is merely a pass through to the Session Bean.
> >
> > thanks
> >
> > Doug
>
>

Re: Web Application Migration to Geronimo

Posted by David Jencks <da...@yahoo.com>.
On May 16, 2007, at 11:09 AM, Doug Lochart wrote:

> Actually it is to the WebSphere Application Server Community  
> Edition which runs Geronimo pre-wired  with Tomcat.
>
> I have a web application deployed as an EAR  (Stateless Session EJB  
> (in ejb_jar) , Servlet(in .WAR) ) that combined is a WebService.  I  
> did not write the Application and I am real new to Web Services.

What exactly do you mean by "web service"? Is this a jaxrpc web  
service deployed with all the required j2ee 1.4 xml files such as the  
jaxrpc mapping file?

>   My task is to deploy this web application to WAS CE (Geronimo).   
> I tried simply deploying it as is but of course it failed giving me  
> an error like this:
>
>
> Error: Unable to distribute FrancePolicyServer.ear: Unable to
>    resolve reference "WebServiceContainer" in gbean
>    default/Application_ID/1179336634177/car? 
> EJBModule=FrancePolicyServer_EJB.jar,J2EEApplication=default/ 
> Application_ID/1179336634177/ 
> car,StatelessSessionBean=FrancePolicyServer,j2eeType=WSLink,name=Franc 
> ePolicyServer
>    to a gbean matching the pattern [?name=TomcatWebContainer#]
>
> First of all any idea what this error means?  I am sure it is a  
> need for a plan but I would like to understand what is happening.

I'm surprised you are getting this error.  The gbean it's looking for  
is in the tomcat configuration, so you might try adding the tomcat  
car as a dependency of the ejb jar (not the web module war file) or  
the ear.  However, the web service deployer is supposed to be adding  
this dependency for you.
Something like this:

      <dep:dependency>
         <dep:groupId>geronimo</dep:groupId>
         <dep:artifactId>tomcat</dep:artifactId>
         <dep:type>car</dep:type>
      </dep:dependency>


One thing to beware of is that jaxrpc web services either have to be  
extremely simple so they don't need a jaxrpc mapping file or you have  
to come up with a jaxrpc mapping file, something for which we don't  
have any tools.  Geronimo is quite strict about what it will accept  
in a jaxrpc mapping file, so its possible that something that works  
on another server won't work in geronimo.  However I don't see how  
this could result in the error you are seeing.  I would not have the  
patience to try to get a non-trivial jaxrpc web service to work, I  
would convert it to a jaxws web service and use a geronimo 2.0 snapshot.

thanks
david jencks


>
> I have read through several developerworks articles and numerous  
> examples on geronimo (looks like a kick a$$ product by the way, I  
> like the IoC design) and from what I gather I need to provide 1 or  
> more extra deployment descriptors/deployment plans specific for  
> geronimo.  I was hoping for a good example of these plans so that I  
> could hack it up and do some trial and error to learn but I still  
> feel I lack the knowledge to even start down the right path.  I  
> don't know which ones I need and how to construct them.
>
> So what I am asking is based on my application I described what  
> types of geronimo specific xml files do I need?
>
> According to the docs it looks like I need a geronimo- 
> application.xml as a deployment plan but I did not see a good  
> example of that and I was left feeling that I am missing something  
> for the Web Service.  In the META-INF directory of the ejb-jar file  
> I see my webservices.xml and a mapping.xml and also 2 ibm (was 6.0)  
> specific binding files  ibm-webservices-ext.xmi and ibm-webservices- 
> bnd.xmi which I have no clue how they come into play.  I do know  
> that the Servlet is merely a pass through to the Session Bean.
>
> thanks
>
> Doug


Re: Web Application Migration to Geronimo

Posted by Vamsavardhana Reddy <c1...@gmail.com>.
Use the following dependency tag in geronimo-application.xml.

  <sys:dependency>
  <sys:groupId>geronimo</sys:groupId>
  <sys:artifactId>axis</sys:artifactId>
  <sys:type>car</sys:type>
  </sys:dependency>

Remove geronimo-web.xml from the war.

Vamsi


On 5/18/07, Doug Lochart <dl...@capecomputing.com> wrote:
> I have tried many more times but I am stuck.  Since I have a WAR I
> included a geronimo-web.xml in the WEB-INF directory of the WAR as well.
>
> Any help is appreciated.  I really do not know where to begin on this.
> I wish I knew what geronimo was looking for with this exception.  I am
> half tempted to bring the source down and go through the stack trace but
> that may confuse me even more.
>
> Here is my deployment plan.  I have used this same one both as a
> parameter on the command line to deploy as well as placing the file in
> the META-INF directory of the ear file.
>
> geronimo-application.xml
>
> <?xml version="1.0" encoding="UTF-8"?>
> <application application-name="FrancePolicyServerEar"
>               xmlns="http://geronimo.apache.org/xml/ns/j2ee/application-1.1"
>               xmlns:sec="http://geronimo.apache.org/xml/ns/security-1.1"
>               xmlns:sys="http://geronimo.apache.org/xml/ns/deployment-1.1">
>   <sys:environment>
>     <sys:moduleId>
>       <sys:groupId>france</sys:groupId>
>       <sys:artifactId>FrancePolicyServerEar</sys:artifactId>
>       <sys:version>1.0</sys:version>
>       <sys:type>car</sys:type>
>     </sys:moduleId>
>     <sys:dependencies/>
>     <sys:hidden-classes/>
>     <sys:non-overridable-classes/>
>   </sys:environment>
> </application>
>
> geronimo-web.xml (in WEB-INF of WAR)
>
> <?xml version="1.0" encoding="UTF-8"?>
> <web-app xmlns="http://geronimo.apache.org/xml/ns/j2ee/web-1.1">
>   <dep:environment
> xmlns:dep="http://geronimo.apache.org/xml/ns/deployment-1.1">
>     <dep:moduleId>
>       <dep:groupId>geronimo</dep:groupId>
>       <dep:artifactId>FrancePolicyServerEar</dep:artifactId>
>       <dep:version>1.1</dep:version>
>       <dep:type>war</dep:type>
>     </dep:moduleId>
>     <dep:dependencies>
>       <dep:dependency>
>          <dep:groupId>geronimo</dep:groupId>
>          <dep:artifactId>geronimo-webservices</dep:artifactId>
>          <dep:type>jar</dep:type>
>       </dep:dependency>
>       <dep:dependency>
>          <dep:groupId>geronimo</dep:groupId>
>          <dep:artifactId>geronimo-axis</dep:artifactId>
>          <dep:type>jar</dep:type>
>       </dep:dependency>
>     </dep:dependencies>
>   </dep:environment>
>   <context-root>/Rule</context-root>
> </web-app>
>
> I still keep getting this exception:
>
> 21:20:25,680 ERROR [Deployer] Deployment failed:
> plan=/root/my-geronimo-application.xml,
> module=/mnt/steve_d/Blaze65/deployfrancepolicy/FrancePolicyServer.ear
> org.apache.geronimo.common.DeploymentException: Unable to resolve
> reference "WebServiceContainer" in gbean
> france/FrancePolicyServerEar/1.0/car?EJBModule=FrancePolicyServer_EJB.jar,J2EEApplication=france/FrancePolicyServerEar/1.0/car,StatelessSessionBean=FrancePolicyServer,j2eeType=WSLink,name=FrancePolicyServer
> to a gbean matching the pattern [?name=TomcatWebContainer#]
>         at
> org.apache.geronimo.deployment.DeploymentContext.getConfigurationData(DeploymentContext.java:376)
>         at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:305)
>         at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:124)
>         at
> org.apache.geronimo.deployment.Deployer$$FastClassByCGLIB$$734a235d.invoke(<generated>)
>         at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>         at
> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
>         at
> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122)
>         at
> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:852)
>         at
> org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:239)
>         at
> org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:338)
>         at
> org.apache.geronimo.kernel.KernelGBean$$FastClassByCGLIB$$1cccefc9.invoke(<generated>)
>         at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>         at
> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
>         at
> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122)
>         at
> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:852)
>         at
> org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:239)
>         at
> org.apache.geronimo.system.jmx.MBeanGBeanBridge.invoke(MBeanGBeanBridge.java:168)
>         at
> com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke(DynamicMetaDataImpl.java:231)
>         at
> com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java:238)
>         at
> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:833)
>         at
> com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:802)
>         at
> javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1423)
>         at
> javax.management.remote.rmi.RMIConnectionImpl.access$100(RMIConnectionImpl.java:96)
>         at
> javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1260)
>         at
> java.security.AccessController.doPrivileged(AccessController.java:275)
>         at
> javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1363)
>         at
> javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:797)
>         at sun.reflect.GeneratedMethodAccessor56.invoke(Unknown Source)
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>         at java.lang.reflect.Method.invoke(Method.java:615)
>         at
> sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:309)
>         at sun.rmi.transport.Transport$1.run(Transport.java:168)
>         at
> java.security.AccessController.doPrivileged(AccessController.java:275)
>         at sun.rmi.transport.Transport.serviceCall(Transport.java:164)
>         at
> sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:506)
>         at
> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.handleRequest(TCPTransport.java:838)
>         at
> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:912)
>         at java.lang.Thread.run(Thread.java:799)
>
> thanks a lot
>
> Doug
>
>
> Vamsavardhana Reddy wrote:
> > Please post your deployment plan.
> >
> > Vamsi
> >
> > On 5/16/07, Doug Lochart <dl...@capecomputing.com> wrote:
> >> Actually it is to the WebSphere Application Server Community Edition
> >> which runs Geronimo pre-wired  with Tomcat.
> >>
> >> I have a web application deployed as an EAR  (Stateless Session EJB (in
> >> ejb_jar) , Servlet(in .WAR) ) that combined is a WebService.  I did not
> >> write the Application and I am real new to Web Services.  My task is to
> >> deploy this web application to WAS CE (Geronimo).  I tried simply
> >> deploying it as is but of course it failed giving me an error like this:
> >>
> >>
> >> Error: Unable to distribute FrancePolicyServer.ear: Unable to
> >>     resolve reference "WebServiceContainer" in gbean
> >>
> >> default/Application_ID/1179336634177/car?EJBModule=FrancePolicyServer_EJB.jar,J2EEApplication=default/Application_ID/1179336634177/car,StatelessSessionBean=FrancePolicyServer,j2eeType=WSLink,name=FrancePolicyServer
> >>
> >>     to a gbean matching the pattern [?name=TomcatWebContainer#]
> >>
> >> First of all any idea what this error means?  I am sure it is a need for
> >> a plan but I would like to understand what is happening.
> >>
> >> I have read through several developerworks articles and numerous
> >> examples on geronimo (looks like a kick a$$ product by the way, I like
> >> the IoC design) and from what I gather I need to provide 1 or more extra
> >> deployment descriptors/deployment plans specific for geronimo.  I was
> >> hoping for a good example of these plans so that I could hack it up and
> >> do some trial and error to learn but I still feel I lack the knowledge
> >> to even start down the right path.  I don't know which ones I need and
> >> how to construct them.
> >>
> >> So what I am asking is based on my application I described what types of
> >> geronimo specific xml files do I need?
> >>
> >> According to the docs it looks like I need a geronimo-application.xml as
> >> a deployment plan but I did not see a good example of that and I was
> >> left feeling that I am missing something for the Web Service.  In the
> >> META-INF directory of the ejb-jar file I see my webservices.xml and a
> >> mapping.xml and also 2 ibm (was 6.0) specific binding files
> >> ibm-webservices-ext.xmi and ibm-webservices-bnd.xmi which I have no clue
> >> how they come into play.  I do know that the Servlet is merely a pass
> >> through to the Session Bean.
> >>
> >> thanks
> >>
> >> Doug
> >>
> >
>
>

Re: Web Application Migration to Geronimo

Posted by Doug Lochart <dl...@capecomputing.com>.
I have tried many more times but I am stuck.  Since I have a WAR I 
included a geronimo-web.xml in the WEB-INF directory of the WAR as well.

Any help is appreciated.  I really do not know where to begin on this.  
I wish I knew what geronimo was looking for with this exception.  I am 
half tempted to bring the source down and go through the stack trace but 
that may confuse me even more.

Here is my deployment plan.  I have used this same one both as a 
parameter on the command line to deploy as well as placing the file in 
the META-INF directory of the ear file.

geronimo-application.xml

<?xml version="1.0" encoding="UTF-8"?>
<application application-name="FrancePolicyServerEar"
              xmlns="http://geronimo.apache.org/xml/ns/j2ee/application-1.1"
              xmlns:sec="http://geronimo.apache.org/xml/ns/security-1.1"
              xmlns:sys="http://geronimo.apache.org/xml/ns/deployment-1.1">
  <sys:environment>
    <sys:moduleId>
      <sys:groupId>france</sys:groupId>
      <sys:artifactId>FrancePolicyServerEar</sys:artifactId>
      <sys:version>1.0</sys:version>
      <sys:type>car</sys:type>
    </sys:moduleId>
    <sys:dependencies/>
    <sys:hidden-classes/>
    <sys:non-overridable-classes/>
  </sys:environment>
</application>

geronimo-web.xml (in WEB-INF of WAR)

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://geronimo.apache.org/xml/ns/j2ee/web-1.1">
  <dep:environment 
xmlns:dep="http://geronimo.apache.org/xml/ns/deployment-1.1">
    <dep:moduleId>
      <dep:groupId>geronimo</dep:groupId>
      <dep:artifactId>FrancePolicyServerEar</dep:artifactId>
      <dep:version>1.1</dep:version>
      <dep:type>war</dep:type>
    </dep:moduleId>
    <dep:dependencies>
      <dep:dependency>
         <dep:groupId>geronimo</dep:groupId>
         <dep:artifactId>geronimo-webservices</dep:artifactId>
         <dep:type>jar</dep:type>
      </dep:dependency>
      <dep:dependency>
         <dep:groupId>geronimo</dep:groupId>
         <dep:artifactId>geronimo-axis</dep:artifactId>
         <dep:type>jar</dep:type>
      </dep:dependency>
    </dep:dependencies>
  </dep:environment>
  <context-root>/Rule</context-root>
</web-app>

I still keep getting this exception:

21:20:25,680 ERROR [Deployer] Deployment failed: 
plan=/root/my-geronimo-application.xml, 
module=/mnt/steve_d/Blaze65/deployfrancepolicy/FrancePolicyServer.ear
org.apache.geronimo.common.DeploymentException: Unable to resolve 
reference "WebServiceContainer" in gbean 
france/FrancePolicyServerEar/1.0/car?EJBModule=FrancePolicyServer_EJB.jar,J2EEApplication=france/FrancePolicyServerEar/1.0/car,StatelessSessionBean=FrancePolicyServer,j2eeType=WSLink,name=FrancePolicyServer 
to a gbean matching the pattern [?name=TomcatWebContainer#]
        at 
org.apache.geronimo.deployment.DeploymentContext.getConfigurationData(DeploymentContext.java:376)
        at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:305)
        at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:124)
        at 
org.apache.geronimo.deployment.Deployer$$FastClassByCGLIB$$734a235d.invoke(<generated>)
        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
        at 
org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
        at 
org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122)
        at 
org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:852)
        at 
org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:239)
        at 
org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:338)
        at 
org.apache.geronimo.kernel.KernelGBean$$FastClassByCGLIB$$1cccefc9.invoke(<generated>)
        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
        at 
org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
        at 
org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122)
        at 
org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:852)
        at 
org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:239)
        at 
org.apache.geronimo.system.jmx.MBeanGBeanBridge.invoke(MBeanGBeanBridge.java:168)
        at 
com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke(DynamicMetaDataImpl.java:231)
        at 
com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java:238)
        at 
com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:833)
        at 
com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:802)
        at 
javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1423)
        at 
javax.management.remote.rmi.RMIConnectionImpl.access$100(RMIConnectionImpl.java:96)
        at 
javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1260)
        at 
java.security.AccessController.doPrivileged(AccessController.java:275)
        at 
javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1363)
        at 
javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:797)
        at sun.reflect.GeneratedMethodAccessor56.invoke(Unknown Source)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:615)
        at 
sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:309)
        at sun.rmi.transport.Transport$1.run(Transport.java:168)
        at 
java.security.AccessController.doPrivileged(AccessController.java:275)
        at sun.rmi.transport.Transport.serviceCall(Transport.java:164)
        at 
sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:506)
        at 
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.handleRequest(TCPTransport.java:838)
        at 
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:912)
        at java.lang.Thread.run(Thread.java:799)

thanks a lot

Doug


Vamsavardhana Reddy wrote:
> Please post your deployment plan.
>
> Vamsi
>
> On 5/16/07, Doug Lochart <dl...@capecomputing.com> wrote:
>> Actually it is to the WebSphere Application Server Community Edition
>> which runs Geronimo pre-wired  with Tomcat.
>>
>> I have a web application deployed as an EAR  (Stateless Session EJB (in
>> ejb_jar) , Servlet(in .WAR) ) that combined is a WebService.  I did not
>> write the Application and I am real new to Web Services.  My task is to
>> deploy this web application to WAS CE (Geronimo).  I tried simply
>> deploying it as is but of course it failed giving me an error like this:
>>
>>
>> Error: Unable to distribute FrancePolicyServer.ear: Unable to
>>     resolve reference "WebServiceContainer" in gbean
>>
>> default/Application_ID/1179336634177/car?EJBModule=FrancePolicyServer_EJB.jar,J2EEApplication=default/Application_ID/1179336634177/car,StatelessSessionBean=FrancePolicyServer,j2eeType=WSLink,name=FrancePolicyServer 
>>
>>     to a gbean matching the pattern [?name=TomcatWebContainer#]
>>
>> First of all any idea what this error means?  I am sure it is a need for
>> a plan but I would like to understand what is happening.
>>
>> I have read through several developerworks articles and numerous
>> examples on geronimo (looks like a kick a$$ product by the way, I like
>> the IoC design) and from what I gather I need to provide 1 or more extra
>> deployment descriptors/deployment plans specific for geronimo.  I was
>> hoping for a good example of these plans so that I could hack it up and
>> do some trial and error to learn but I still feel I lack the knowledge
>> to even start down the right path.  I don't know which ones I need and
>> how to construct them.
>>
>> So what I am asking is based on my application I described what types of
>> geronimo specific xml files do I need?
>>
>> According to the docs it looks like I need a geronimo-application.xml as
>> a deployment plan but I did not see a good example of that and I was
>> left feeling that I am missing something for the Web Service.  In the
>> META-INF directory of the ejb-jar file I see my webservices.xml and a
>> mapping.xml and also 2 ibm (was 6.0) specific binding files
>> ibm-webservices-ext.xmi and ibm-webservices-bnd.xmi which I have no clue
>> how they come into play.  I do know that the Servlet is merely a pass
>> through to the Session Bean.
>>
>> thanks
>>
>> Doug
>>
>


Re: Web Application Migration to Geronimo

Posted by Doug Lochart <dl...@capecomputing.com>.
This is what I have so far.  If you read my original question you would 
see that I was asking what would be the proper plan to use.  This ear is 
also a web service with a war inside.  It seems to be complaining about 
the WAR now.  Do I have to have a geronimo-web.xml in the META-INF of my 
WAR along with this?

<?xml version="1.0" encoding="UTF-8"?>
<application application-name="FrancePolicyServerEar"
              
xmlns="http://geronimo.apache.org/xml/ns/j2ee/application-1.1"
              xmlns:sec="http://geronimo.apache.org/xml/ns/security-1.1"
              xmlns:sys="http://geronimo.apache.org/xml/ns/deployment-1.1">
  <sys:environment>
    <sys:moduleId>
      <sys:groupId>default</sys:groupId>
      <sys:artifactId>FrancePolicyServerEar</sys:artifactId>
      <sys:version>1-default</sys:version>
      <sys:type>car</sys:type>
    </sys:moduleId>
    <sys:dependencies/>
    <sys:hidden-classes/>
    <sys:non-overridable-classes/>
  </sys:environment>
</application>

Also is there another plan I need for the web service aspect?

Thanks

Doug


Vamsavardhana Reddy wrote:
> Please post your deployment plan.
>
> Vamsi
>
> On 5/16/07, Doug Lochart <dl...@capecomputing.com> wrote:
>> Actually it is to the WebSphere Application Server Community Edition
>> which runs Geronimo pre-wired  with Tomcat.
>>
>> I have a web application deployed as an EAR  (Stateless Session EJB (in
>> ejb_jar) , Servlet(in .WAR) ) that combined is a WebService.  I did not
>> write the Application and I am real new to Web Services.  My task is to
>> deploy this web application to WAS CE (Geronimo).  I tried simply
>> deploying it as is but of course it failed giving me an error like this:
>>
>>
>> Error: Unable to distribute FrancePolicyServer.ear: Unable to
>>     resolve reference "WebServiceContainer" in gbean
>>
>> default/Application_ID/1179336634177/car?EJBModule=FrancePolicyServer_EJB.jar,J2EEApplication=default/Application_ID/1179336634177/car,StatelessSessionBean=FrancePolicyServer,j2eeType=WSLink,name=FrancePolicyServer 
>>
>>     to a gbean matching the pattern [?name=TomcatWebContainer#]
>>
>> First of all any idea what this error means?  I am sure it is a need for
>> a plan but I would like to understand what is happening.
>>
>> I have read through several developerworks articles and numerous
>> examples on geronimo (looks like a kick a$$ product by the way, I like
>> the IoC design) and from what I gather I need to provide 1 or more extra
>> deployment descriptors/deployment plans specific for geronimo.  I was
>> hoping for a good example of these plans so that I could hack it up and
>> do some trial and error to learn but I still feel I lack the knowledge
>> to even start down the right path.  I don't know which ones I need and
>> how to construct them.
>>
>> So what I am asking is based on my application I described what types of
>> geronimo specific xml files do I need?
>>
>> According to the docs it looks like I need a geronimo-application.xml as
>> a deployment plan but I did not see a good example of that and I was
>> left feeling that I am missing something for the Web Service.  In the
>> META-INF directory of the ejb-jar file I see my webservices.xml and a
>> mapping.xml and also 2 ibm (was 6.0) specific binding files
>> ibm-webservices-ext.xmi and ibm-webservices-bnd.xmi which I have no clue
>> how they come into play.  I do know that the Servlet is merely a pass
>> through to the Session Bean.
>>
>> thanks
>>
>> Doug
>>
>


Re: Web Application Migration to Geronimo

Posted by Vamsavardhana Reddy <c1...@gmail.com>.
Please post your deployment plan.

Vamsi

On 5/16/07, Doug Lochart <dl...@capecomputing.com> wrote:
> Actually it is to the WebSphere Application Server Community Edition
> which runs Geronimo pre-wired  with Tomcat.
>
> I have a web application deployed as an EAR  (Stateless Session EJB (in
> ejb_jar) , Servlet(in .WAR) ) that combined is a WebService.  I did not
> write the Application and I am real new to Web Services.  My task is to
> deploy this web application to WAS CE (Geronimo).  I tried simply
> deploying it as is but of course it failed giving me an error like this:
>
>
> Error: Unable to distribute FrancePolicyServer.ear: Unable to
>     resolve reference "WebServiceContainer" in gbean
>
> default/Application_ID/1179336634177/car?EJBModule=FrancePolicyServer_EJB.jar,J2EEApplication=default/Application_ID/1179336634177/car,StatelessSessionBean=FrancePolicyServer,j2eeType=WSLink,name=FrancePolicyServer
>     to a gbean matching the pattern [?name=TomcatWebContainer#]
>
> First of all any idea what this error means?  I am sure it is a need for
> a plan but I would like to understand what is happening.
>
> I have read through several developerworks articles and numerous
> examples on geronimo (looks like a kick a$$ product by the way, I like
> the IoC design) and from what I gather I need to provide 1 or more extra
> deployment descriptors/deployment plans specific for geronimo.  I was
> hoping for a good example of these plans so that I could hack it up and
> do some trial and error to learn but I still feel I lack the knowledge
> to even start down the right path.  I don't know which ones I need and
> how to construct them.
>
> So what I am asking is based on my application I described what types of
> geronimo specific xml files do I need?
>
> According to the docs it looks like I need a geronimo-application.xml as
> a deployment plan but I did not see a good example of that and I was
> left feeling that I am missing something for the Web Service.  In the
> META-INF directory of the ejb-jar file I see my webservices.xml and a
> mapping.xml and also 2 ibm (was 6.0) specific binding files
> ibm-webservices-ext.xmi and ibm-webservices-bnd.xmi which I have no clue
> how they come into play.  I do know that the Servlet is merely a pass
> through to the Session Bean.
>
> thanks
>
> Doug
>