Quantcast

Virtual Host Configuration

classic Classic list List threaded Threaded
16 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Virtual Host Configuration

Ray Sprinkle
I am having difficulty getting Geronimo 2.2.1 virtual hosts to work.   I
have followed the documentation
And once I got past the whole GBEANs configuration syntax its seems
straight forward enough.   I've
gotten the server to run and the test app to deploy but it always
deploys to the default host.   I can't
figure out what I'm missing.    Any advice would be appreciated.   I
have attached the tomcat configuration
from my config.xml and the geronimo-web.xml.  The test application
itself is a single jsp.

config.xml (line breaks added for clarity):

    <module name="org.apache.geronimo.configs/tomcat6/2.2.1/car">
       <gbean name="org.apache.geronimo.configs/tomcat6/2.2.1/car?
 
ServiceModule=org.apache.geronimo.configs/tomcat6/2.2.1/car,j2eeType=Hos
t,name=TestHost2"
         gbeanInfo="org.apache.geronimo.tomcat.HostGBean">
            <attribute
name="className">org.apache.catalina.core.StandardHost</attribute>
            <attribute name="initParams">name=testhost2.vhainc.local
                           appBase=
                           workDir=work</attribute>
            <reference name="Engine">
                <pattern>
                    <name>TomcatEngine</name>
                </pattern>
            </reference>
        </gbean>
    </module>
 

geronimo-web.xml

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<web:web-app
xmlns:app="http://geronimo.apache.org/xml/ns/j2ee/application-2.0"
 
xmlns:client="http://geronimo.apache.org/xml/ns/j2ee/application-client-
2.0"
    xmlns:conn="http://geronimo.apache.org/xml/ns/j2ee/connector-1.2"
    xmlns:dep="http://geronimo.apache.org/xml/ns/deployment-1.2"
    xmlns:ejb="http://openejb.apache.org/xml/ns/openejb-jar-2.2"
    xmlns:log="http://geronimo.apache.org/xml/ns/loginconfig-2.0"
    xmlns:name="http://geronimo.apache.org/xml/ns/naming-1.2"
    xmlns:pers="http://java.sun.com/xml/ns/persistence"
    xmlns:pkgen="http://openejb.apache.org/xml/ns/pkgen-2.1"
    xmlns:sec="http://geronimo.apache.org/xml/ns/security-2.0"
    xmlns:web="http://geronimo.apache.org/xml/ns/j2ee/web-2.0.1">
    <dep:environment>
        <dep:moduleId>
            <dep:groupId>default</dep:groupId>
            <dep:artifactId>test</dep:artifactId>
            <dep:version>1.0</dep:version>
            <dep:type>war</dep:type>
        </dep:moduleId>
        <dep:dependencies/>
    </dep:environment>
    <web:context-root>/test</web:context-root>
    <web:container-config>
      <tomcat
xmlns="http://geronimo.apache.org/xml/ns/j2ee/web/tomcat-2.0.1">
        <host>testhost1.vhainc.local</host>
      </tomcat>
    </web:container-config>
</web:web-app>
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Virtual Host Configuration

Ivan Xu
First a quick check at it, I found that the name of HostGBean is  name=testhost2.vhainc.local, while in your deployment plan, it wrote   <host>testhost1.vhainc.local</host> , wonder is it a typo error ?

2012/1/21 Ray Sprinkle <[hidden email]>
I am having difficulty getting Geronimo 2.2.1 virtual hosts to work.   I
have followed the documentation
And once I got past the whole GBEANs configuration syntax its seems
straight forward enough.   I've
gotten the server to run and the test app to deploy but it always
deploys to the default host.   I can't
figure out what I'm missing.    Any advice would be appreciated.   I
have attached the tomcat configuration
from my config.xml and the geronimo-web.xml.  The test application
itself is a single jsp.

config.xml (line breaks added for clarity):

   <module name="org.apache.geronimo.configs/tomcat6/2.2.1/car">
      <gbean name="org.apache.geronimo.configs/tomcat6/2.2.1/car?

ServiceModule=org.apache.geronimo.configs/tomcat6/2.2.1/car,j2eeType=Hos
t,name=TestHost2"
        gbeanInfo="org.apache.geronimo.tomcat.HostGBean">
           <attribute
name="className">org.apache.catalina.core.StandardHost</attribute>
           <attribute name="initParams">name=testhost2.vhainc.local
                          appBase=
                          workDir=work</attribute>
           <reference name="Engine">
               <pattern>
                   <name>TomcatEngine</name>
               </pattern>
           </reference>
       </gbean>
   </module>


geronimo-web.xml

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<web:web-app
xmlns:app="http://geronimo.apache.org/xml/ns/j2ee/application-2.0"

xmlns:client="http://geronimo.apache.org/xml/ns/j2ee/application-client-
2.0"
   xmlns:conn="http://geronimo.apache.org/xml/ns/j2ee/connector-1.2"
   xmlns:dep="http://geronimo.apache.org/xml/ns/deployment-1.2"
   xmlns:ejb="http://openejb.apache.org/xml/ns/openejb-jar-2.2"
   xmlns:log="http://geronimo.apache.org/xml/ns/loginconfig-2.0"
   xmlns:name="http://geronimo.apache.org/xml/ns/naming-1.2"
   xmlns:pers="http://java.sun.com/xml/ns/persistence"
   xmlns:pkgen="http://openejb.apache.org/xml/ns/pkgen-2.1"
   xmlns:sec="http://geronimo.apache.org/xml/ns/security-2.0"
   xmlns:web="http://geronimo.apache.org/xml/ns/j2ee/web-2.0.1">
   <dep:environment>
       <dep:moduleId>
           <dep:groupId>default</dep:groupId>
           <dep:artifactId>test</dep:artifactId>
           <dep:version>1.0</dep:version>
           <dep:type>war</dep:type>
       </dep:moduleId>
       <dep:dependencies/>
   </dep:environment>
   <web:context-root>/test</web:context-root>
   <web:container-config>
     <tomcat
xmlns="http://geronimo.apache.org/xml/ns/j2ee/web/tomcat-2.0.1">
       <host>testhost1.vhainc.local</host>
     </tomcat>
   </web:container-config>
</web:web-app>



--
Ivan
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

RE: Virtual Host Configuration

Ray Sprinkle
> First a quick check at it, I found that the name of HostGBean is  name=testhost2.vhainc.local, while in your deployment plan, it wrote   <host>testhost1.vhainc.local</host> , wonder is it a typo error ?

Typo.  Too many test configurations.  I verified that all configurations point to testhost1, and it still doesn't work.
Are there additional steps?  I successfully deployed this to a virtual host on a standalone Tomcat 6 installation and I
had to create a directory for the appBase.   Is there somewhere in geronimo that I have to do something similar?

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Virtual Host Configuration

Radim Kolar
Typo. Too many test configurations. I verified that all configurations
point to testhost1, and it still doesn't work. Are there additional
steps? I successfully deployed this to a virtual host on a standalone
Tomcat 6 installation and I had to create a directory for the appBase.
Is there somewhere in geronimo that I have to do something similar?

i didnt get virtual hosts to work in 2.2 branch too (tried git too) and
then moved to jetty.

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

RE: Virtual Host Configuration

Ray Sprinkle


> -----Original Message-----
> From: Radim Kolar [mailto:[hidden email]]
> Sent: Monday, January 23, 2012 3:01 PM
> To: [hidden email]
> Subject: Re: Virtual Host Configuration
>
> Typo. Too many test configurations. I verified that all configurations
point to
> testhost1, and it still doesn't work. Are there additional steps? I
successfully
> deployed this to a virtual host on a standalone Tomcat 6 installation
and I had
> to create a directory for the appBase.
> Is there somewhere in geronimo that I have to do something similar?
>
> i didnt get virtual hosts to work in 2.2 branch too (tried git too)
and then
> moved to jetty.

I started with 2.2, tried 2.1 and tried standalone Tomcat 6.   The only
one that
worked was Tomcat.  I've traced the initialization of the Tomcat
container in
Geronimo using Eclipse and it looks good to me.  This should just work.
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Virtual Host Configuration

Radim Kolar
 > I started with 2.2, tried 2.1 and tried standalone Tomcat 6.
In 2.1 virtual hosts works, follow documentation on website.

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Virtual Host Configuration

Ivan Xu
Hmm, I am wondering which doc did you refer to, and did not think the current geronimo-web.xml will work in Geronimo 2.1.*.
For the virtual host in Geronimo 2.2.*,  the doc url is  https://cwiki.apache.org/GMOxDOC22/configuring-virtual-host-in-tomcat.html.
If you really would like to use container-config to configure the virtual host, the namespace should be corrected,
--->
<web:container-config>
     <tomcat
xmlns="http://geronimo.apache.org/xml/ns/j2ee/web/tomcat-2.0.1">   <---    <tomcat xmlns="http://geronimo.apache.org/xml/ns/web/tomcat/config-1.0">
       <host>testhost1.vhainc.local</host>
     </tomcat>
   </web:container-config>
<---

2012/1/24 Radim Kolar <[hidden email]>
> I started with 2.2, tried 2.1 and tried standalone Tomcat 6.
In 2.1 virtual hosts works, follow documentation on website.




--
Ivan
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

RE: Virtual Host Configuration

Ray Sprinkle
 Hmm, I am wondering which doc did you refer to, and did not think the current geronimo-web.xml will work in Geronimo 2.1.*.
 For the virtual host in Geronimo 2.2.*,  the doc url is  https://cwiki.apache.org/GMOxDOC22/configuring-virtual-host-in-tomcat.html.
 If you really would like to use container-config to configure the virtual host, the namespace should be corrected,
--->
<web:container-config>
     <tomcat
xmlns="http://geronimo.apache.org/xml/ns/j2ee/web/tomcat-2.0.1">   <---    <tomcat xmlns="http://geronimo.apache.org/xml/ns/web/tomcat/config-1.0">
       <host>testhost1.vhainc.local</host>
     </tomcat>
   </web:container-config>
<---

Changing the xmlns to "http://geronimo.apache.org/xml/ns/web/tomcat/config-1.0" fixed my problem.  

How can  I help fix the documentation?   With your help, I found the namespace correctly referenced in the documentation for
"Creating deployment plans for Web applications"  

Link: https://cwiki.apache.org/GMOxDOC22/creating-deployment-plans-for-web-applications.html#CreatingdeploymentplansforWebapplications-Thecontainerconfigelement

but  in the reference for geronimo-web.xml (https://cwiki.apache.org/GMOxDOC22/geronimo-webxml.html), in the <container-config> section, it links to http://geronimo.apache.org/xml/ns/j2ee/web/tomcat-2.0.1, which is the incorrect value I was using.   Shouldn't these two sections be in agreement?

2012/1/24 Radim Kolar <[hidden email]>
> I started with 2.2, tried 2.1 and tried standalone Tomcat 6.
In 2.1 virtual hosts works, follow documentation on website.


Thank you for the great help.  
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Virtual Host Configuration

Ivan Xu
Maybe the doc did not express the idea clearly. Think that it means that the container-config element is configured in  http://geronimo.apache.org/xml/ns/j2ee/web/tomcat-2.0.1 . While the contents of that element should be follow the schema  http://geronimo.apache.org/xml/ns/web/tomcat/config-1.0
For any doc issue, you could open a JIRA and add the issue description there.

2012/1/25 Ray Sprinkle <[hidden email]>
 Hmm, I am wondering which doc did you refer to, and did not think the current geronimo-web.xml will work in Geronimo 2.1.*.
 For the virtual host in Geronimo 2.2.*,  the doc url is  https://cwiki.apache.org/GMOxDOC22/configuring-virtual-host-in-tomcat.html.
 If you really would like to use container-config to configure the virtual host, the namespace should be corrected,
--->
<web:container-config>
     <tomcat
xmlns="http://geronimo.apache.org/xml/ns/j2ee/web/tomcat-2.0.1">   <---    <tomcat xmlns="http://geronimo.apache.org/xml/ns/web/tomcat/config-1.0">
       <host>testhost1.vhainc.local</host>
     </tomcat>
   </web:container-config>
<---

Changing the xmlns to "http://geronimo.apache.org/xml/ns/web/tomcat/config-1.0" fixed my problem.

How can  I help fix the documentation?   With your help, I found the namespace correctly referenced in the documentation for
"Creating deployment plans for Web applications"

Link: https://cwiki.apache.org/GMOxDOC22/creating-deployment-plans-for-web-applications.html#CreatingdeploymentplansforWebapplications-Thecontainerconfigelement

but  in the reference for geronimo-web.xml (https://cwiki.apache.org/GMOxDOC22/geronimo-webxml.html), in the <container-config> section, it links to http://geronimo.apache.org/xml/ns/j2ee/web/tomcat-2.0.1, which is the incorrect value I was using.   Shouldn't these two sections be in agreement?

2012/1/24 Radim Kolar <[hidden email]>
> I started with 2.2, tried 2.1 and tried standalone Tomcat 6.
In 2.1 virtual hosts works, follow documentation on website.


Thank you for the great help.



--
Ivan
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Virtual Host Configuration

Radim Kolar
I could not make virtual hosts in any G 2.2 to work:

configuration is following: (example configuration from wiki does not work also, it fails with same error)

--- config.xml ---

<module name="org.apache.geronimo.configs/tomcat6/2.2.2-SNAPSHOT/car">
     <gbean gbeanInfo="org.apache.geronimo.tomcat.HostGBean" name="org.apache.geronimo.configs/tomcat6/2.2.2-SNAPSHOT/car?ServiceModule=org.apache.geronimo.configs/tomcat6/2.2.2-SNAPSHOT/car,j2eeType=Host,name=TomcatVirtualHost_1">
      <attribute name="className">org.apache.catalina.core.StandardHost</attribute>
       <attribute name="initParams">name=whois.hebeidomains.com
                appBase=
                workDir=work</attribute>
            <reference name="Engine">
                <pattern>
                    <name>TomcatEngine</name>
                </pattern>
            </reference>
        </gbean>
    </module>

---- geronimo-web.xml ---- (valid xml)
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://geronimo.apache.org/xml/ns/j2ee/web-2.0.1"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://geronimo.apache.org/xml/ns/j2ee/web-2.0.1
                             http://schema.filez.com/geronimo22/geronimo-web-2.0.1.xsd">
    <environment xmlns="http://geronimo.apache.org/xml/ns/deployment-1.2"
    xsi:schemaLocation="http://geronimo.apache.org/xml/ns/deployment-1.2
                        http://schema.filez.com/geronimo22/geronimo-module-1.2.xsd">
        <moduleId>
            <groupId>hebeidomains</groupId>
            <artifactId>whois-web</artifactId>
            <version>1.0.1</version>
            <type>war</type>
        </moduleId>
        <non-overridable-classes>
            <filter>net.sf.cglib</filter>
            <filter>javax.transaction</filter>
        <filter>javax.xml.soap</filter>
        <filter>org.apache.axiom</filter>
        </non-overridable-classes>
        <inverse-classloading/>
    </environment>
    <context-root></context-root>
    <container-config>
      <tomcat xmlns="http://geronimo.apache.org/xml/ns/web/tomcat/config-1.0"
              xsi:schemaLocation="http://geronimo.apache.org/xml/ns/web/tomcat/config-1.0 http://schema.filez.com/geronimo22/geronimo-tomcat-config-1.0.xsd">
      <host>whois.hebeidomains.com</host>
      </tomcat>
    </container-config>
</web-app>

-- and it fails --
<a class="expand-task" href="javascript:showHideSection('123675693838726org_apache_geronimo_abbreviateMessages');showHideSection('123675693838726org_apache_geronimo_detailedMessages');" tabindex="1">show/hide Error
The application was not successfully started.
start of hebeidomains/whois-web/1.0.1/war failed
org.apache.geronimo.kernel.config.LifecycleException: start of hebeidomains/whois-web/1.0.1/war failed
	at org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:562)
	at org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:527)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
	at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
	at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:816)
	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.gbean.GBeanLifecycle$$EnhancerByCGLIB$$7eeef827.startConfiguration()
	at org.apache.geronimo.deployment.plugin.local.StartCommand.run(StartCommand.java:67)
	at java.lang.Thread.run(Thread.java:662)
Caused by: org.apache.geronimo.kernel.config.InvalidConfigException: Unknown start exception
	at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:531)
	at org.apache.geronimo.kernel.config.KernelConfigurationManager.start(KernelConfigurationManager.java:190)
	at org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:546)
	... 14 more
Caused by: org.apache.geronimo.gbean.InvalidConfigurationException: Configuration hebeidomains/whois-web/1.0.1/war failed to start due to the following reasons:
  The service J2EEApplication=null,j2eeType=WebModule,name=hebeidomains/whois-web/1.0.1/war did not start because ContainerBase.addChild: start: LifecycleException:  java.io.IOException: Context did not start for an unknown reason

	at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:494)
	... 16 more

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Virtual Host Configuration

Ivan Xu
First, the Geronimo used is 2.2.2-SNAPSHOT ? The version number in the config.xml should be consistent with other versions.
There should be more error message in the log file, could you paste it ?

2012/2/2 Radim Kolar <[hidden email]>
I could not make virtual hosts in any G 2.2 to work:

configuration is following: (example configuration from wiki does not work also, it fails with same error)

--- config.xml ---

<module name="org.apache.geronimo.configs/tomcat6/2.2.2-SNAPSHOT/car">
     <gbean gbeanInfo="org.apache.geronimo.tomcat.HostGBean" name="org.apache.geronimo.configs/tomcat6/2.2.2-SNAPSHOT/car?ServiceModule=org.apache.geronimo.configs/tomcat6/2.2.2-SNAPSHOT/car,j2eeType=Host,name=TomcatVirtualHost_1">

      <attribute name="className">org.apache.catalina.core.StandardHost</attribute>
       <attribute name="initParams">name=whois.hebeidomains.com

                appBase=
                workDir=work</attribute>
            <reference name="Engine">
                <pattern>
                    <name>TomcatEngine</name>
                </pattern>
            </reference>
        </gbean>
    </module>

---- geronimo-web.xml ---- (valid xml)
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://geronimo.apache.org/xml/ns/j2ee/web-2.0.1"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://geronimo.apache.org/xml/ns/j2ee/web-2.0.1
                             http://schema.filez.com/geronimo22/geronimo-web-2.0.1.xsd">
    <environment xmlns="http://geronimo.apache.org/xml/ns/deployment-1.2"
    xsi:schemaLocation="http://geronimo.apache.org/xml/ns/deployment-1.2
                        http://schema.filez.com/geronimo22/geronimo-module-1.2.xsd">
        <moduleId>
            <groupId>hebeidomains</groupId>
            <artifactId>whois-web</artifactId>
            <version>1.0.1</version>
            <type>war</type>
        </moduleId>
        <non-overridable-classes>
            <filter>net.sf.cglib</filter>
            <filter>javax.transaction</filter>
        <filter>javax.xml.soap</filter>
        <filter>org.apache.axiom</filter>
        </non-overridable-classes>
        <inverse-classloading/>
    </environment>
    <context-root></context-root>
    <container-config>
      <tomcat xmlns="http://geronimo.apache.org/xml/ns/web/tomcat/config-1.0"
              xsi:schemaLocation="http://geronimo.apache.org/xml/ns/web/tomcat/config-1.0 http://schema.filez.com/geronimo22/geronimo-tomcat-config-1.0.xsd">
      <host>whois.hebeidomains.com</host>
      </tomcat>
    </container-config>
</web-app>

-- and it fails --
show/hide Error
The application was not successfully started.
start of hebeidomains/whois-web/1.0.1/war failed
org.apache.geronimo.kernel.config.LifecycleException: start of hebeidomains/whois-web/1.0.1/war failed
	at org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:562)
	at org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:527)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
	at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
	at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:816)
	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.gbean.GBeanLifecycle$$EnhancerByCGLIB$$7eeef827.startConfiguration()
	at org.apache.geronimo.deployment.plugin.local.StartCommand.run(StartCommand.java:67)
	at java.lang.Thread.run(Thread.java:662)
Caused by: org.apache.geronimo.kernel.config.InvalidConfigException: Unknown start exception
	at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:531)
	at org.apache.geronimo.kernel.config.KernelConfigurationManager.start(KernelConfigurationManager.java:190)
	at org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:546)
	... 14 more
Caused by: org.apache.geronimo.gbean.InvalidConfigurationException: Configuration hebeidomains/whois-web/1.0.1/war failed to start due to the following reasons:
  The service J2EEApplication=null,j2eeType=WebModule,name=hebeidomains/whois-web/1.0.1/war did not start because ContainerBase.addChild: start: LifecycleException:  java.io.IOException: Context did not start for an unknown reason

	at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:494)
	... 16 more




--
Ivan
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Virtual Host Configuration

Radim Kolar
Dne 2.2.2012 1:44, Ivan napsal(a):
First, the Geronimo used is 2.2.2-SNAPSHOT ?
yes. tried 2.2.1 too. No difference.

The version number in the config.xml should be consistent with other versions.
with what other versions?  "http://geronimo.apache.org/xml/ns/j2ee/web-2.0.1" is XML namespace

here is log message from geronimo.log

2012-02-01 20:30:24,884 INFO  [DeploymentContext] The Strict Manifest Classpath processing mode is in effect.
This option can be altered by specifying -DXorg.apache.geronimo.deployment.LenientMFCP=true|false
Specify ="true" for more lenient processing such as ignoring missing jars and references that are not spec compliant.
2012-02-01 20:31:28,150 WARN  [TomcatWebAppContext] TomcatWebAppContext failed
2012-02-01 20:31:28,150 ERROR [GBeanInstanceState] Error while starting; GBean is now in the FAILED state: abstractName="hebeidomains/whois-web/1.0.1/war?J2EEApplication=null,j2eeType=WebModule,name=hebeidomains/whois-web/1.0.1/war"
java.lang.IllegalStateException: ContainerBase.addChild: start: LifecycleException:  java.io.IOException: Context did not start for an unknown reason
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:803)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:779)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:601)
    at org.apache.geronimo.tomcat.TomcatContainer.addContext(TomcatContainer.java:295)
    at org.apache.geronimo.tomcat.TomcatWebAppContext.doStart(TomcatWebAppContext.java:525)
    at org.apache.geronimo.gbean.runtime.GBeanInstance.createInstance(GBeanInstance.java:953)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(GBeanInstanceState.java:269)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(GBeanInstanceState.java:103)
    at org.apache.geronimo.gbean.runtime.GBeanInstance.start(GBeanInstance.java:525)
    at org.apache.geronimo.gbean.runtime.GBeanDependency.attemptFullStart(GBeanDependency.java:110)
    at org.apache.geronimo.gbean.runtime.GBeanDependency.addTarget(GBeanDependency.java:145)
    at org.apache.geronimo.gbean.runtime.GBeanDependency$1.running(GBeanDependency.java:119)
    at org.apache.geronimo.kernel.basic.BasicLifecycleMonitor.fireRunningEvent(BasicLifecycleMonitor.java:175)
    at org.apache.geronimo.kernel.basic.BasicLifecycleMonitor.access$300(BasicLifecycleMonitor.java:44)
    at org.apache.geronimo.kernel.basic.BasicLifecycleMonitor$RawLifecycleBroadcaster.fireRunningEvent(BasicLifecycleMonitor.java:253)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(GBeanInstanceState.java:295)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(GBeanInstanceState.java:103)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.startRecursive(GBeanInstanceState.java:125)
    at org.apache.geronimo.gbean.runtime.GBeanInstance.startRecursive(GBeanInstance.java:539)
    at org.apache.geronimo.kernel.basic.BasicKernel.startRecursiveGBean(BasicKernel.java:377)
    at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:465)
    at org.apache.geronimo.kernel.config.KernelConfigurationManager.start(KernelConfigurationManager.java:190)
    at org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:546)
    at org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:527)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
    at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
    at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:816)
    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.gbean.GBeanLifecycle$$EnhancerByCGLIB$$7eeef827.startConfiguration(<generated>)
    at org.apache.geronimo.deployment.plugin.local.StartCommand.run(StartCommand.java:67)
    at java.lang.Thread.run(Thread.java:662)
2012-02-01 20:31:28,259 ERROR [DeploymentPortlet] The application was not successfully started.
start of hebeidomains/whois-web/1.0.1/war failed
org.apache.geronimo.kernel.config.LifecycleException: start of hebeidomains/whois-web/1.0.1/war failed
    at org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:562)
    at org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:527)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
    at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
    at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:816)
    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.gbean.GBeanLifecycle$$EnhancerByCGLIB$$7eeef827.startConfiguration(<generated>)
    at org.apache.geronimo.deployment.plugin.local.StartCommand.run(StartCommand.java:67)
    at java.lang.Thread.run(Thread.java:662)
Caused by: org.apache.geronimo.kernel.config.InvalidConfigException: Unknown start exception
    at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:531)
    at org.apache.geronimo.kernel.config.KernelConfigurationManager.start(KernelConfigurationManager.java:190)
    at org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:546)
    ... 14 more
Caused by: org.apache.geronimo.gbean.InvalidConfigurationException: Configuration hebeidomains/whois-web/1.0.1/war failed to start due to the following reasons:
  The service J2EEApplication=null,j2eeType=WebModule,name=hebeidomains/whois-web/1.0.1/war did not start because ContainerBase.addChild: start: LifecycleException:  java.io.IOException: Context did not start for an unknown reason

    at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:494)
    ... 16 more

i just noticed that there is also stacktrace.log file, most likely generated by spring framework. it contains following error about MessageContext class not found. This class is most likely from AXIS. I have configured inverse classloading, but axis should be in classpath anyway because its provided by G

2012-02-01 20:31:27,994 [Thread-25] ERROR StackTrace  - Sanitizing stacktrace:
java.lang.ClassNotFoundException: MessageContext in classloader hebeidomains/whois-web/1.0.1/war
    at org.apache.geronimo.kernel.config.MultiParentClassLoader.loadOptimizedClass(MultiParentClassLoader.java:407)
    at org.apache.geronimo.kernel.config.MultiParentClassLoader.loadClass(MultiParentClassLoader.java:257)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
    at java.lang.Class.getDeclaredMethods0(Native Method)
    at java.lang.Class.privateGetDeclaredMethods(Class.java:2427)
    at java.lang.Class.getDeclaredMethods(Class.java:1791)
    at org.springframework.core.type.StandardAnnotationMetadata.hasAnnotatedMethods(StandardAnnotationMetadata.java:136)
    at org.springframework.context.annotation.ConfigurationClassBeanDefinitionReader.checkConfigurationClassCandidate(ConfigurationClassBeanDefinitionReader.java:318)
    at org.springframework.context.annotation.ConfigurationClassPostProcessor.processConfigBeanDefinitions(ConfigurationClassPostProcessor.java:172)
    at org.springframework.context.annotation.ConfigurationClassPostProcessor.postProcessBeanDefinitionRegistry(ConfigurationClassPostProcessor.java:142)
    at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:599)
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:407)
    at org.codehaus.groovy.grails.commons.spring.DefaultRuntimeSpringConfiguration.getApplicationContext(DefaultRuntimeSpringConfiguration.java:154)
    at org.codehaus.groovy.grails.commons.spring.GrailsRuntimeConfigurator.configure(GrailsRuntimeConfigurator.java:164)
    at org.codehaus.groovy.grails.commons.spring.GrailsRuntimeConfigurator.configure(GrailsRuntimeConfigurator.java:124)
    at org.codehaus.groovy.grails.web.context.GrailsConfigUtils.configureWebApplicationContext(GrailsConfigUtils.java:120)
    at org.codehaus.groovy.grails.web.context.GrailsContextLoader.createWebApplicationContext(GrailsContextLoader.java:73)
    at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:197)
    at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:47)
    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4201)
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:4694)
    at org.apache.geronimo.tomcat.GeronimoStandardContext.access$201(GeronimoStandardContext.java:64)
    at org.apache.geronimo.tomcat.GeronimoStandardContext$SystemMethodValve.invoke(GeronimoStandardContext.java:412)
    at org.apache.geronimo.tomcat.valve.GeronimoBeforeAfterValve.invoke(GeronimoBeforeAfterValve.java:47)
    at org.apache.geronimo.tomcat.GeronimoStandardContext.start(GeronimoStandardContext.java:264)
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:799)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:779)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:601)
    at org.apache.geronimo.tomcat.TomcatContainer.addContext(TomcatContainer.java:295)
    at org.apache.geronimo.tomcat.TomcatWebAppContext.doStart(TomcatWebAppContext.java:525)
    at org.apache.geronimo.gbean.runtime.GBeanInstance.createInstance(GBeanInstance.java:953)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(GBeanInstanceState.java:269)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(GBeanInstanceState.java:103)
    at org.apache.geronimo.gbean.runtime.GBeanInstance.start(GBeanInstance.java:525)
    at org.apache.geronimo.gbean.runtime.GBeanDependency.attemptFullStart(GBeanDependency.java:110)
    at org.apache.geronimo.gbean.runtime.GBeanDependency.addTarget(GBeanDependency.java:145)
    at org.apache.geronimo.gbean.runtime.GBeanDependency$1.running(GBeanDependency.java:119)
    at org.apache.geronimo.kernel.basic.BasicLifecycleMonitor.fireRunningEvent(BasicLifecycleMonitor.java:175)
    at org.apache.geronimo.kernel.basic.BasicLifecycleMonitor.access$300(BasicLifecycleMonitor.java:44)
    at org.apache.geronimo.kernel.basic.BasicLifecycleMonitor$RawLifecycleBroadcaster.fireRunningEvent(BasicLifecycleMonitor.java:253)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(GBeanInstanceState.java:295)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(GBeanInstanceState.java:103)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.startRecursive(GBeanInstanceState.java:125)
    at org.apache.geronimo.gbean.runtime.GBeanInstance.startRecursive(GBeanInstance.java:539)
    at org.apache.geronimo.kernel.basic.BasicKernel.startRecursiveGBean(BasicKernel.java:377)
    at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:465)
    at org.apache.geronimo.kernel.config.KernelConfigurationManager.start(KernelConfigurationManager.java:190)
    at org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:546)
    at org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:527)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
    at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
    at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:816)
    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.gbean.GBeanLifecycle$$EnhancerByCGLIB$$7eeef827.startConfiguration(<generated>)
    at org.apache.geronimo.deployment.plugin.local.StartCommand.run(StartCommand.java:67)
    at java.lang.Thread.run(Thread.java:662)
2012-02-01 20:31:28,025 [Thread-25] ERROR StackTrace  - Sanitizing stacktrace:
java.lang.NoClassDefFoundError: MessageContext
    at java.lang.Class.getDeclaredMethods0(Native Method)
    at java.lang.Class.privateGetDeclaredMethods(Class.java:2427)
    at java.lang.Class.getDeclaredMethods(Class.java:1791)
    at org.springframework.core.type.StandardAnnotationMetadata.hasAnnotatedMethods(StandardAnnotationMetadata.java:136)
    at org.springframework.context.annotation.ConfigurationClassBeanDefinitionReader.checkConfigurationClassCandidate(ConfigurationClassBeanDefinitionReader.java:318)
    at org.springframework.context.annotation.ConfigurationClassPostProcessor.processConfigBeanDefinitions(ConfigurationClassPostProcessor.java:172)
    at org.springframework.context.annotation.ConfigurationClassPostProcessor.postProcessBeanDefinitionRegistry(ConfigurationClassPostProcessor.java:142)
    at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:599)
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:407)
    at org.codehaus.groovy.grails.commons.spring.DefaultRuntimeSpringConfiguration.getApplicationContext(DefaultRuntimeSpringConfiguration.java:154)
    at org.codehaus.groovy.grails.commons.spring.GrailsRuntimeConfigurator.configure(GrailsRuntimeConfigurator.java:164)
    at org.codehaus.groovy.grails.commons.spring.GrailsRuntimeConfigurator.configure(GrailsRuntimeConfigurator.java:124)
    at org.codehaus.groovy.grails.web.context.GrailsConfigUtils.configureWebApplicationContext(GrailsConfigUtils.java:120)
    at org.codehaus.groovy.grails.web.context.GrailsContextLoader.createWebApplicationContext(GrailsContextLoader.java:73)
    at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:197)
    at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:47)
    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4201)
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:4694)
    at org.apache.geronimo.tomcat.GeronimoStandardContext.access$201(GeronimoStandardContext.java:64)
    at org.apache.geronimo.tomcat.GeronimoStandardContext$SystemMethodValve.invoke(GeronimoStandardContext.java:412)
    at org.apache.geronimo.tomcat.valve.GeronimoBeforeAfterValve.invoke(GeronimoBeforeAfterValve.java:47)
    at org.apache.geronimo.tomcat.GeronimoStandardContext.start(GeronimoStandardContext.java:264)
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:799)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:779)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:601)
    at org.apache.geronimo.tomcat.TomcatContainer.addContext(TomcatContainer.java:295)
    at org.apache.geronimo.tomcat.TomcatWebAppContext.doStart(TomcatWebAppContext.java:525)
    at org.apache.geronimo.gbean.runtime.GBeanInstance.createInstance(GBeanInstance.java:953)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(GBeanInstanceState.java:269)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(GBeanInstanceState.java:103)
    at org.apache.geronimo.gbean.runtime.GBeanInstance.start(GBeanInstance.java:525)
    at org.apache.geronimo.gbean.runtime.GBeanDependency.attemptFullStart(GBeanDependency.java:110)
    at org.apache.geronimo.gbean.runtime.GBeanDependency.addTarget(GBeanDependency.java:145)
    at org.apache.geronimo.gbean.runtime.GBeanDependency$1.running(GBeanDependency.java:119)
    at org.apache.geronimo.kernel.basic.BasicLifecycleMonitor.fireRunningEvent(BasicLifecycleMonitor.java:175)
    at org.apache.geronimo.kernel.basic.BasicLifecycleMonitor.access$300(BasicLifecycleMonitor.java:44)
    at org.apache.geronimo.kernel.basic.BasicLifecycleMonitor$RawLifecycleBroadcaster.fireRunningEvent(BasicLifecycleMonitor.java:253)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(GBeanInstanceState.java:295)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(GBeanInstanceState.java:103)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.startRecursive(GBeanInstanceState.java:125)
    at org.apache.geronimo.gbean.runtime.GBeanInstance.startRecursive(GBeanInstance.java:539)
    at org.apache.geronimo.kernel.basic.BasicKernel.startRecursiveGBean(BasicKernel.java:377)
    at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:465)
    at org.apache.geronimo.kernel.config.KernelConfigurationManager.start(KernelConfigurationManager.java:190)
    at org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:546)
    at org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:527)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
    at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
    at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:816)
    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.gbean.GBeanLifecycle$$EnhancerByCGLIB$$7eeef827.startConfiguration(<generated>)
    at org.apache.geronimo.deployment.plugin.local.StartCommand.run(StartCommand.java:67)
    at java.lang.Thread.run(Thread.java:662)
Caused by: java.lang.ClassNotFoundException: MessageContext in classloader hebeidomains/whois-web/1.0.1/war
    at org.apache.geronimo.kernel.config.MultiParentClassLoader.loadOptimizedClass(MultiParentClassLoader.java:407)
    at org.apache.geronimo.kernel.config.MultiParentClassLoader.loadClass(MultiParentClassLoader.java:257)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
    at java.lang.Class.getDeclaredMethods0(Native Method)
    at java.lang.Class.privateGetDeclaredMethods(Class.java:2427)
    at java.lang.Class.getDeclaredMethods(Class.java:1791)
    at org.apache.geronimo.tomcat.GeronimoStandardContext.access$201(GeronimoStandardContext.java:64)
    at org.apache.geronimo.tomcat.GeronimoStandardContext$SystemMethodValve.invoke(GeronimoStandardContext.java:412)
    at org.apache.geronimo.tomcat.valve.GeronimoBeforeAfterValve.invoke(GeronimoBeforeAfterValve.java:47)
    at org.apache.geronimo.tomcat.GeronimoStandardContext.start(GeronimoStandardContext.java:264)
    at org.apache.geronimo.tomcat.TomcatContainer.addContext(TomcatContainer.java:295)
    at org.apache.geronimo.tomcat.TomcatWebAppContext.doStart(TomcatWebAppContext.java:525)
    at org.apache.geronimo.gbean.runtime.GBeanInstance.createInstance(GBeanInstance.java:953)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(GBeanInstanceState.java:269)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(GBeanInstanceState.java:103)
    at org.apache.geronimo.gbean.runtime.GBeanInstance.start(GBeanInstance.java:525)
    at org.apache.geronimo.gbean.runtime.GBeanDependency.attemptFullStart(GBeanDependency.java:110)
    at org.apache.geronimo.gbean.runtime.GBeanDependency.addTarget(GBeanDependency.java:145)
    at org.apache.geronimo.gbean.runtime.GBeanDependency$1.running(GBeanDependency.java:119)
    at org.apache.geronimo.kernel.basic.BasicLifecycleMonitor.fireRunningEvent(BasicLifecycleMonitor.java:175)
    at org.apache.geronimo.kernel.basic.BasicLifecycleMonitor.access$300(BasicLifecycleMonitor.java:44)
    at org.apache.geronimo.kernel.basic.BasicLifecycleMonitor$RawLifecycleBroadcaster.fireRunningEvent(BasicLifecycleMonitor.java:253)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(GBeanInstanceState.java:295)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(GBeanInstanceState.java:103)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.startRecursive(GBeanInstanceState.java:125)
    at org.apache.geronimo.gbean.runtime.GBeanInstance.startRecursive(GBeanInstance.java:539)
    at org.apache.geronimo.kernel.basic.BasicKernel.startRecursiveGBean(BasicKernel.java:377)
    at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:465)
    at org.apache.geronimo.kernel.config.KernelConfigurationManager.start(KernelConfigurationManager.java:190)
    at org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:546)
    at org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:527)
    ... 9 more


Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Virtual Host Configuration

Ivan Xu
I doubt that  MessageContext means the class in Axis or Axis2.
From the exception message " java.lang.ClassNotFoundException: MessageContext in classloader hebeidomains/whois-web/1.0.1/war ", it seems that no package name there, and I have checked the codes in Geronimo there, the name printed is a full name, which including the package name.
With the exception stack, the CNF is thrown while invoking getDeclaredMethods, think add a debug point and find the target class should be helpful to find the root cause.

2012/2/2 Radim Kolar <[hidden email]>
Dne 2.2.2012 1:44, Ivan napsal(a):
First, the Geronimo used is 2.2.2-SNAPSHOT ?
yes. tried 2.2.1 too. No difference.


The version number in the config.xml should be consistent with other versions.
with what other versions?  "http://geronimo.apache.org/xml/ns/j2ee/web-2.0.1" is XML namespace

here is log message from geronimo.log

2012-02-01 20:30:24,884 INFO  [DeploymentContext] The Strict Manifest Classpath processing mode is in effect.
This option can be altered by specifying -DXorg.apache.geronimo.deployment.LenientMFCP=true|false
Specify ="true" for more lenient processing such as ignoring missing jars and references that are not spec compliant.
2012-02-01 20:31:28,150 WARN  [TomcatWebAppContext] TomcatWebAppContext failed
2012-02-01 20:31:28,150 ERROR [GBeanInstanceState] Error while starting; GBean is now in the FAILED state: abstractName="hebeidomains/whois-web/1.0.1/war?J2EEApplication=null,j2eeType=WebModule,name=hebeidomains/whois-web/1.0.1/war"
java.lang.IllegalStateException: ContainerBase.addChild: start: LifecycleException:  java.io.IOException: Context did not start for an unknown reason
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:803)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:779)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:601)
    at org.apache.geronimo.tomcat.TomcatContainer.addContext(TomcatContainer.java:295)
    at org.apache.geronimo.tomcat.TomcatWebAppContext.doStart(TomcatWebAppContext.java:525)
    at org.apache.geronimo.gbean.runtime.GBeanInstance.createInstance(GBeanInstance.java:953)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(GBeanInstanceState.java:269)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(GBeanInstanceState.java:103)
    at org.apache.geronimo.gbean.runtime.GBeanInstance.start(GBeanInstance.java:525)
    at org.apache.geronimo.gbean.runtime.GBeanDependency.attemptFullStart(GBeanDependency.java:110)
    at org.apache.geronimo.gbean.runtime.GBeanDependency.addTarget(GBeanDependency.java:145)
    at org.apache.geronimo.gbean.runtime.GBeanDependency$1.running(GBeanDependency.java:119)
    at org.apache.geronimo.kernel.basic.BasicLifecycleMonitor.fireRunningEvent(BasicLifecycleMonitor.java:175)
    at org.apache.geronimo.kernel.basic.BasicLifecycleMonitor.access$300(BasicLifecycleMonitor.java:44)
    at org.apache.geronimo.kernel.basic.BasicLifecycleMonitor$RawLifecycleBroadcaster.fireRunningEvent(BasicLifecycleMonitor.java:253)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(GBeanInstanceState.java:295)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(GBeanInstanceState.java:103)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.startRecursive(GBeanInstanceState.java:125)
    at org.apache.geronimo.gbean.runtime.GBeanInstance.startRecursive(GBeanInstance.java:539)
    at org.apache.geronimo.kernel.basic.BasicKernel.startRecursiveGBean(BasicKernel.java:377)
    at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:465)

    at org.apache.geronimo.kernel.config.KernelConfigurationManager.start(KernelConfigurationManager.java:190)
    at org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:546)
    at org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:527)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
    at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
    at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:816)
    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.gbean.GBeanLifecycle$$EnhancerByCGLIB$$7eeef827.startConfiguration(<generated>)

    at org.apache.geronimo.deployment.plugin.local.StartCommand.run(StartCommand.java:67)
    at java.lang.Thread.run(Thread.java:662)
2012-02-01 20:31:28,259 ERROR [DeploymentPortlet] The application was not successfully started.

start of hebeidomains/whois-web/1.0.1/war failed
org.apache.geronimo.kernel.config.LifecycleException: start of hebeidomains/whois-web/1.0.1/war failed
    at org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:562)
    at org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:527)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
    at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
    at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:816)
    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.gbean.GBeanLifecycle$$EnhancerByCGLIB$$7eeef827.startConfiguration(<generated>)

    at org.apache.geronimo.deployment.plugin.local.StartCommand.run(StartCommand.java:67)
    at java.lang.Thread.run(Thread.java:662)
Caused by: org.apache.geronimo.kernel.config.InvalidConfigException: Unknown start exception
    at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:531)
    at org.apache.geronimo.kernel.config.KernelConfigurationManager.start(KernelConfigurationManager.java:190)
    at org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:546)
    ... 14 more
Caused by: org.apache.geronimo.gbean.InvalidConfigurationException: Configuration hebeidomains/whois-web/1.0.1/war failed to start due to the following reasons:
  The service J2EEApplication=null,j2eeType=WebModule,name=hebeidomains/whois-web/1.0.1/war did not start because ContainerBase.addChild: start: LifecycleException:  java.io.IOException: Context did not start for an unknown reason

    at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:494)
    ... 16 more

i just noticed that there is also stacktrace.log file, most likely generated by spring framework. it contains following error about MessageContext class not found. This class is most likely from AXIS. I have configured inverse classloading, but axis should be in classpath anyway because its provided by G

2012-02-01 20:31:27,994 [Thread-25] ERROR StackTrace  - Sanitizing stacktrace:
java.lang.ClassNotFoundException: MessageContext in classloader hebeidomains/whois-web/1.0.1/war
    at org.apache.geronimo.kernel.config.MultiParentClassLoader.loadOptimizedClass(MultiParentClassLoader.java:407)
    at org.apache.geronimo.kernel.config.MultiParentClassLoader.loadClass(MultiParentClassLoader.java:257)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
    at java.lang.Class.getDeclaredMethods0(Native Method)
    at java.lang.Class.privateGetDeclaredMethods(Class.java:2427)
    at java.lang.Class.getDeclaredMethods(Class.java:1791)
    at org.springframework.core.type.StandardAnnotationMetadata.hasAnnotatedMethods(StandardAnnotationMetadata.java:136)
    at org.springframework.context.annotation.ConfigurationClassBeanDefinitionReader.checkConfigurationClassCandidate(ConfigurationClassBeanDefinitionReader.java:318)
    at org.springframework.context.annotation.ConfigurationClassPostProcessor.processConfigBeanDefinitions(ConfigurationClassPostProcessor.java:172)
    at org.springframework.context.annotation.ConfigurationClassPostProcessor.postProcessBeanDefinitionRegistry(ConfigurationClassPostProcessor.java:142)
    at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:599)
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:407)
    at org.codehaus.groovy.grails.commons.spring.DefaultRuntimeSpringConfiguration.getApplicationContext(DefaultRuntimeSpringConfiguration.java:154)
    at org.codehaus.groovy.grails.commons.spring.GrailsRuntimeConfigurator.configure(GrailsRuntimeConfigurator.java:164)
    at org.codehaus.groovy.grails.commons.spring.GrailsRuntimeConfigurator.configure(GrailsRuntimeConfigurator.java:124)
    at org.codehaus.groovy.grails.web.context.GrailsConfigUtils.configureWebApplicationContext(GrailsConfigUtils.java:120)
    at org.codehaus.groovy.grails.web.context.GrailsContextLoader.createWebApplicationContext(GrailsContextLoader.java:73)
    at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:197)
    at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:47)
    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4201)
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:4694)
    at org.apache.geronimo.tomcat.GeronimoStandardContext.access$201(GeronimoStandardContext.java:64)
    at org.apache.geronimo.tomcat.GeronimoStandardContext$SystemMethodValve.invoke(GeronimoStandardContext.java:412)
    at org.apache.geronimo.tomcat.valve.GeronimoBeforeAfterValve.invoke(GeronimoBeforeAfterValve.java:47)
    at org.apache.geronimo.tomcat.GeronimoStandardContext.start(GeronimoStandardContext.java:264)
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:799)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:779)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:601)
    at org.apache.geronimo.tomcat.TomcatContainer.addContext(TomcatContainer.java:295)
    at org.apache.geronimo.tomcat.TomcatWebAppContext.doStart(TomcatWebAppContext.java:525)
    at org.apache.geronimo.gbean.runtime.GBeanInstance.createInstance(GBeanInstance.java:953)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(GBeanInstanceState.java:269)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(GBeanInstanceState.java:103)
    at org.apache.geronimo.gbean.runtime.GBeanInstance.start(GBeanInstance.java:525)
    at org.apache.geronimo.gbean.runtime.GBeanDependency.attemptFullStart(GBeanDependency.java:110)
    at org.apache.geronimo.gbean.runtime.GBeanDependency.addTarget(GBeanDependency.java:145)
    at org.apache.geronimo.gbean.runtime.GBeanDependency$1.running(GBeanDependency.java:119)
    at org.apache.geronimo.kernel.basic.BasicLifecycleMonitor.fireRunningEvent(BasicLifecycleMonitor.java:175)
    at org.apache.geronimo.kernel.basic.BasicLifecycleMonitor.access$300(BasicLifecycleMonitor.java:44)
    at org.apache.geronimo.kernel.basic.BasicLifecycleMonitor$RawLifecycleBroadcaster.fireRunningEvent(BasicLifecycleMonitor.java:253)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(GBeanInstanceState.java:295)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(GBeanInstanceState.java:103)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.startRecursive(GBeanInstanceState.java:125)
    at org.apache.geronimo.gbean.runtime.GBeanInstance.startRecursive(GBeanInstance.java:539)
    at org.apache.geronimo.kernel.basic.BasicKernel.startRecursiveGBean(BasicKernel.java:377)
    at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:465)

    at org.apache.geronimo.kernel.config.KernelConfigurationManager.start(KernelConfigurationManager.java:190)
    at org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:546)
    at org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:527)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
    at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
    at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:816)
    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.gbean.GBeanLifecycle$$EnhancerByCGLIB$$7eeef827.startConfiguration(<generated>)

    at org.apache.geronimo.deployment.plugin.local.StartCommand.run(StartCommand.java:67)
    at java.lang.Thread.run(Thread.java:662)
2012-02-01 20:31:28,025 [Thread-25] ERROR StackTrace  - Sanitizing stacktrace:
java.lang.NoClassDefFoundError: MessageContext
    at java.lang.Class.getDeclaredMethods0(Native Method)
    at java.lang.Class.privateGetDeclaredMethods(Class.java:2427)
    at java.lang.Class.getDeclaredMethods(Class.java:1791)
    at org.springframework.core.type.StandardAnnotationMetadata.hasAnnotatedMethods(StandardAnnotationMetadata.java:136)
    at org.springframework.context.annotation.ConfigurationClassBeanDefinitionReader.checkConfigurationClassCandidate(ConfigurationClassBeanDefinitionReader.java:318)
    at org.springframework.context.annotation.ConfigurationClassPostProcessor.processConfigBeanDefinitions(ConfigurationClassPostProcessor.java:172)
    at org.springframework.context.annotation.ConfigurationClassPostProcessor.postProcessBeanDefinitionRegistry(ConfigurationClassPostProcessor.java:142)
    at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:599)
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:407)
    at org.codehaus.groovy.grails.commons.spring.DefaultRuntimeSpringConfiguration.getApplicationContext(DefaultRuntimeSpringConfiguration.java:154)
    at org.codehaus.groovy.grails.commons.spring.GrailsRuntimeConfigurator.configure(GrailsRuntimeConfigurator.java:164)
    at org.codehaus.groovy.grails.commons.spring.GrailsRuntimeConfigurator.configure(GrailsRuntimeConfigurator.java:124)
    at org.codehaus.groovy.grails.web.context.GrailsConfigUtils.configureWebApplicationContext(GrailsConfigUtils.java:120)
    at org.codehaus.groovy.grails.web.context.GrailsContextLoader.createWebApplicationContext(GrailsContextLoader.java:73)
    at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:197)
    at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:47)
    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4201)
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:4694)
    at org.apache.geronimo.tomcat.GeronimoStandardContext.access$201(GeronimoStandardContext.java:64)
    at org.apache.geronimo.tomcat.GeronimoStandardContext$SystemMethodValve.invoke(GeronimoStandardContext.java:412)
    at org.apache.geronimo.tomcat.valve.GeronimoBeforeAfterValve.invoke(GeronimoBeforeAfterValve.java:47)
    at org.apache.geronimo.tomcat.GeronimoStandardContext.start(GeronimoStandardContext.java:264)
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:799)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:779)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:601)
    at org.apache.geronimo.tomcat.TomcatContainer.addContext(TomcatContainer.java:295)
    at org.apache.geronimo.tomcat.TomcatWebAppContext.doStart(TomcatWebAppContext.java:525)
    at org.apache.geronimo.gbean.runtime.GBeanInstance.createInstance(GBeanInstance.java:953)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(GBeanInstanceState.java:269)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(GBeanInstanceState.java:103)
    at org.apache.geronimo.gbean.runtime.GBeanInstance.start(GBeanInstance.java:525)
    at org.apache.geronimo.gbean.runtime.GBeanDependency.attemptFullStart(GBeanDependency.java:110)
    at org.apache.geronimo.gbean.runtime.GBeanDependency.addTarget(GBeanDependency.java:145)
    at org.apache.geronimo.gbean.runtime.GBeanDependency$1.running(GBeanDependency.java:119)
    at org.apache.geronimo.kernel.basic.BasicLifecycleMonitor.fireRunningEvent(BasicLifecycleMonitor.java:175)
    at org.apache.geronimo.kernel.basic.BasicLifecycleMonitor.access$300(BasicLifecycleMonitor.java:44)
    at org.apache.geronimo.kernel.basic.BasicLifecycleMonitor$RawLifecycleBroadcaster.fireRunningEvent(BasicLifecycleMonitor.java:253)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(GBeanInstanceState.java:295)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(GBeanInstanceState.java:103)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.startRecursive(GBeanInstanceState.java:125)
    at org.apache.geronimo.gbean.runtime.GBeanInstance.startRecursive(GBeanInstance.java:539)
    at org.apache.geronimo.kernel.basic.BasicKernel.startRecursiveGBean(BasicKernel.java:377)
    at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:465)

    at org.apache.geronimo.kernel.config.KernelConfigurationManager.start(KernelConfigurationManager.java:190)
    at org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:546)
    at org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:527)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
    at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
    at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:816)
    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.gbean.GBeanLifecycle$$EnhancerByCGLIB$$7eeef827.startConfiguration(<generated>)

    at org.apache.geronimo.deployment.plugin.local.StartCommand.run(StartCommand.java:67)
    at java.lang.Thread.run(Thread.java:662)
Caused by: java.lang.ClassNotFoundException: MessageContext in classloader hebeidomains/whois-web/1.0.1/war
    at org.apache.geronimo.kernel.config.MultiParentClassLoader.loadOptimizedClass(MultiParentClassLoader.java:407)
    at org.apache.geronimo.kernel.config.MultiParentClassLoader.loadClass(MultiParentClassLoader.java:257)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
    at java.lang.Class.getDeclaredMethods0(Native Method)
    at java.lang.Class.privateGetDeclaredMethods(Class.java:2427)
    at java.lang.Class.getDeclaredMethods(Class.java:1791)
    at org.apache.geronimo.tomcat.GeronimoStandardContext.access$201(GeronimoStandardContext.java:64)
    at org.apache.geronimo.tomcat.GeronimoStandardContext$SystemMethodValve.invoke(GeronimoStandardContext.java:412)
    at org.apache.geronimo.tomcat.valve.GeronimoBeforeAfterValve.invoke(GeronimoBeforeAfterValve.java:47)
    at org.apache.geronimo.tomcat.GeronimoStandardContext.start(GeronimoStandardContext.java:264)
    at org.apache.geronimo.tomcat.TomcatContainer.addContext(TomcatContainer.java:295)
    at org.apache.geronimo.tomcat.TomcatWebAppContext.doStart(TomcatWebAppContext.java:525)
    at org.apache.geronimo.gbean.runtime.GBeanInstance.createInstance(GBeanInstance.java:953)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(GBeanInstanceState.java:269)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(GBeanInstanceState.java:103)
    at org.apache.geronimo.gbean.runtime.GBeanInstance.start(GBeanInstance.java:525)
    at org.apache.geronimo.gbean.runtime.GBeanDependency.attemptFullStart(GBeanDependency.java:110)
    at org.apache.geronimo.gbean.runtime.GBeanDependency.addTarget(GBeanDependency.java:145)
    at org.apache.geronimo.gbean.runtime.GBeanDependency$1.running(GBeanDependency.java:119)
    at org.apache.geronimo.kernel.basic.BasicLifecycleMonitor.fireRunningEvent(BasicLifecycleMonitor.java:175)
    at org.apache.geronimo.kernel.basic.BasicLifecycleMonitor.access$300(BasicLifecycleMonitor.java:44)
    at org.apache.geronimo.kernel.basic.BasicLifecycleMonitor$RawLifecycleBroadcaster.fireRunningEvent(BasicLifecycleMonitor.java:253)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(GBeanInstanceState.java:295)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(GBeanInstanceState.java:103)
    at org.apache.geronimo.gbean.runtime.GBeanInstanceState.startRecursive(GBeanInstanceState.java:125)
    at org.apache.geronimo.gbean.runtime.GBeanInstance.startRecursive(GBeanInstance.java:539)
    at org.apache.geronimo.kernel.basic.BasicKernel.startRecursiveGBean(BasicKernel.java:377)
    at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:465)

    at org.apache.geronimo.kernel.config.KernelConfigurationManager.start(KernelConfigurationManager.java:190)
    at org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:546)
    at org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:527)
    ... 9 more





--
Ivan
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

classloading

Radim Kolar-2
Is possible to make stack traces like they are on Jboss 7.1? These
traces includes jar from which was class loaded, this is highly useful
when hunting classloading problems.

  STACKTRACE
         at
org.jboss.jca.core.connectionmanager.ccm.CachedConnectionManagerImpl.registerConnection(CachedConnectionManagerImpl.java:265)
         at
org.jboss.jca.core.connectionmanager.AbstractConnectionManager.allocateConnection(AbstractConnectionManager.java:495)
         at
org.jboss.jca.adapters.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:129)
         at org.apache.jsp.index_jsp._jspService(index_jsp.java:256)
         at
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
[jbossweb-7.0.13.Final.jar:]
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
[jboss-servlet-api_3.0_spec-1.0.0.Final.jar:1.0.0.Final]
         at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:369)
[jbossweb-7.0.13.Final.jar:]

Also if you look at
http://www.slideshare.net/rayploski/jboss-application-server-7 slide 6:

* Modular
   * Only API, no AS implementation exposure
   * True isolation

this is what should be done in AS because its time consuming to hunt app
jars vs application server jars classloading issues. At geronimo i was
not able to run some application at all.
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: classloading

Ivan Xu


2012/3/19 Radim Kolar <[hidden email]>
Is possible to make stack traces like they are on Jboss 7.1? These traces includes jar from which was class loaded, this is highly useful when hunting classloading problems.

 STACKTRACE
       at org.jboss.jca.core.connectionmanager.ccm.CachedConnectionManagerImpl.registerConnection(CachedConnectionManagerImpl.java:265)
       at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.allocateConnection(AbstractConnectionManager.java:495)
       at org.jboss.jca.adapters.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:129)
       at org.apache.jsp.index_jsp._jspService(index_jsp.java:256)
       at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) [jbossweb-7.0.13.Final.jar:]
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:847) [jboss-servlet-api_3.0_spec-1.0.0.Final.jar:1.0.0.Final]
       at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:369) [jbossweb-7.0.13.Final.jar:]

 Seems an interesting function, I am thinking that there maybe two ways to do this in Geronimo
a. With the StackTraceElement, it is possible to get the class name, then with the class name, it should be able to find the bundle name with package admin service, but need to consider more for the current classloading configuration.
b. Use the internal class,e.g. sun.reflect.Reflection.getCallerClass, seems that it is able to get the Class instance, then it is easy to find the classloader, then the bundle name.
 

Also if you look at http://www.slideshare.net/rayploski/jboss-application-server-7 slide 6:

* Modular
 * Only API, no AS implementation exposure
 * True isolation

this is what should be done in AS because its time consuming to hunt app jars vs application server jars classloading issues. At geronimo i was not able to run some application at all.

Yes, you are right, current classloading model in Geronimo 3.0-beta is still following the multiparent strategy in the past Geronimo versions, and it does bring issues about class loading conflict. Although hidden-classes could somewhat solve the issue, it is not easy to find the correct configuration for the users. The possible solution has been discussed for many times in the past, need to have a minimal public class set. Actually, in those plugin builder, there has a default environment for this purpose, hope that Geronimo could do that in the future versions.



--
Ivan
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: classloading

David Jencks

On Mar 19, 2012, at 7:25 AM, Ivan wrote:



2012/3/19 Radim Kolar <[hidden email]>
Is possible to make stack traces like they are on Jboss 7.1? These traces includes jar from which was class loaded, this is highly useful when hunting classloading problems.

 STACKTRACE
       at org.jboss.jca.core.connectionmanager.ccm.CachedConnectionManagerImpl.registerConnection(CachedConnectionManagerImpl.java:265)
       at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.allocateConnection(AbstractConnectionManager.java:495)
       at org.jboss.jca.adapters.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:129)
       at org.apache.jsp.index_jsp._jspService(index_jsp.java:256)
       at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) [jbossweb-7.0.13.Final.jar:]
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:847) [jboss-servlet-api_3.0_spec-1.0.0.Final.jar:1.0.0.Final]
       at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:369) [jbossweb-7.0.13.Final.jar:]

 Seems an interesting function, I am thinking that there maybe two ways to do this in Geronimo
a. With the StackTraceElement, it is possible to get the class name, then with the class name, it should be able to find the bundle name with package admin service, but need to consider more for the current classloading configuration.
b. Use the internal class,e.g. sun.reflect.Reflection.getCallerClass, seems that it is able to get the Class instance, then it is easy to find the classloader, then the bundle name.
 

OSGI logging service provides the bundle that the logging event came from.  I haven't entirely figured out pax logging but I think that the bundle is already available as something you can include in the output.

david jencks



Also if you look at http://www.slideshare.net/rayploski/jboss-application-server-7 slide 6:

* Modular
 * Only API, no AS implementation exposure
 * True isolation

this is what should be done in AS because its time consuming to hunt app jars vs application server jars classloading issues. At geronimo i was not able to run some application at all.

Yes, you are right, current classloading model in Geronimo 3.0-beta is still following the multiparent strategy in the past Geronimo versions, and it does bring issues about class loading conflict. Although hidden-classes could somewhat solve the issue, it is not easy to find the correct configuration for the users. The possible solution has been discussed for many times in the past, need to have a minimal public class set. Actually, in those plugin builder, there has a default environment for this purpose, hope that Geronimo could do that in the future versions.



--
Ivan

Loading...