geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Dain Sundstrom <d...@coredevelopers.net>
Subject Re: GBean configuration confusion
Date Wed, 04 Feb 2004 07:01:37 GMT
On Feb 3, 2004, at 9:48 PM, Greg Wilkins wrote:

> I've been chasing some "strange" behaviour with the GBeans  
> configuration.
>
> I'm not sure if these are bugs or just poor exception reporting.  But  
> I'll
> dump here just in case...
>
> The ConfigurationParent object passed into the constuctor of the
> JettyWebApplicationContext  is not in a valid state to do anything  
> with.
>
> If you try calling any methods on it, including toString, it gives you  
> a
>    java.lang.IllegalStateException: Proxy is stopped
> I'm not sure what state this is meant to be in???

Proxies are not valid until doStart.  This is due to the fact that the  
pattern you have assigned for the endpoint may not match any other  
running GBeans (or their may be more then one matching GBean).  When  
you enter the running state we lock down the single reference.

> More annoyingly, if you do not catch this exception then the kernel  
> start
> mechanism does not handle it well - it continues on an NPEs later:
>
> java.lang.NullPointerException
>         at  
> org.apache.geronimo.gbean.jmx.GBeanMBeanReference.handleNotification(GB 
> eanMBeanReference.java:321)
>         at  
> mx4j.server.interceptor.NotificationListenerMBeanServerInterceptor$List 
> enerWrapper.handleNotification(NotificationListenerMBeanServerIntercept 
> or.java:57)
>         at  
> javax.management.NotificationBroadcasterSupport.handleNotification(Noti 
> ficationBroadcasterSupport.java:343)
>         at  
> javax.management.NotificationBroadcasterSupport.sendNotification(Notifi 
> cationBroadcasterSupport.java:317)
>         at  
> org.apache.geronimo.gbean.jmx.AbstractManagedObject.sendNotification(Ab 
> stractManagedObject.java:282)
>         at  
> org.apache.geronimo.gbean.jmx.AbstractManagedObject.attemptFullStart(Ab 
> stractManagedObject.java:535)
>         at  
> org.apache.geronimo.gbean.jmx.AbstractManagedObject.start(AbstractManag 
> edObject.java:317)
>         at  
> org.apache.geronimo.gbean.jmx.AbstractManagedObject.startRecursive(Abst 
> ractManagedObject.java:341)
>         at  
> org.apache.geronimo.gbean.jmx.GBeanMBean$8.invoke(GBeanMBean.java:617)
>         at  
> org.apache.geronimo.gbean.jmx.GBeanMBeanOperation.invoke(GBeanMBeanOper 
> ation.java:193)
>         at  
> org.apache.geronimo.gbean.jmx.GBeanMBean.invoke(GBeanMBean.java:488)
>         at  
> mx4j.server.interceptor.InvokerMBeanServerInterceptor.invoke(InvokerMBe 
> anServerInterceptor.java:224)
>         at  
> mx4j.server.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBe 
> anServerInterceptor.java:121)
>         at  
> mx4j.server.interceptor.SecurityMBeanServerInterceptor.invoke(SecurityM 
> BeanServerInterceptor.java:86)
>         at  
> mx4j.server.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBe 
> anServerInterceptor.java:121)
>         at  
> mx4j.server.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBe 
> anServerInterceptor.java:121)
>         at  
> mx4j.server.interceptor.ContextClassLoaderMBeanServerInterceptor.invoke 
> (ContextClassLoaderMBeanServerInterceptor.java:205)
>         at  
> mx4j.server.MX4JMBeanServer.invoke(MX4JMBeanServer.java:1077)
>         at  
> org.apache.geronimo.deployment.plugin.local.StartCommand.run(StartComma 
> nd.java:88)
>         at java.lang.Thread.run(Thread.java:536)

I don't see how this is possible.  Do you still have the code that  
makes this happen?  If so, please send it to me.

> So I think something in AbstractManagedObject.java   needs a better  
> catch block.
> I'm not familiar enough with this code yet to guess where this should  
> be...

Their is definitely something wacky going on.

-dain


Mime
View raw message