Re: svn commit: r485321 - in /geronimo/server/trunk/modules: geronimo-kernel/src/main/java/org/apache/geronimo/gbean/ geronimo-kernel/src/main/java/org/apache/geronimo/gbean/runtime/ geronimo-kernel/s
Joe, Did you get past this? I am also unable to start geronimo-tomcat6-jee5 built with rev 487196. However I can start geronimo-tomcat6-minimal. The rev 485321 was committed on Dec 10th. The changes discussed recently will not be ready for 2.0-M1. I do not think(?) this is the culprit, But I will be happy to revert this. Thanks Anita --- Joe Bohn [EMAIL PROTECTED] wrote: Anita, Are these changes completed? I'm hitting an error with attempting to start the servers from a fresh trunk build and they might be related (but then again I'm not feeling well and I'm pretty tired ... so I could have something messed up locally). Here's the failure: Booting Geronimo Kernel (in Java 1.5.0_06)... 23:12:51,538 WARN [ConfigurationUtil] Could not load gbean org.apache.geronimo.configs/j2ee-system/2.0-SNAPSHOT/car?ServiceModule=org.apache.geronimo.configs/j 2ee-system/2.0-SNAPSHOT/car,j2eeType=AttributeStore,name=AttributeManager org.apache.geronimo.gbean.InvalidConfigurationException: Target does not have specified method (declared in a GBeanInfo operation): name=hasGBeanAttributes meth odName=hasGBeanAttributes returnType=boolean targetClass=org.apache.geronimo.system.configuration.LocalAttributeManager at org.apache.geronimo.gbean.runtime.GBeanOperation.init(GBeanOperation.java:98) at org.apache.geronimo.gbean.runtime.GBeanInstance.init(GBeanInstance.java:298) at org.apache.geronimo.kernel.basic.BasicKernel.loadGBean(BasicKernel.java:354) at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:363) at org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration(ConfigurationUtil.java:155) at org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration(ConfigurationUtil.java:126) at org.apache.geronimo.system.main.Daemon.doStartup(Daemon.java:242) at org.apache.geronimo.system.main.Daemon.init(Daemon.java:74) at org.apache.geronimo.system.main.Daemon.main(Daemon.java:366) [ ] 0% 1s Startup failed org.apache.geronimo.kernel.config.InvalidConfigException: Unknown start exception at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:444) at org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration(ConfigurationUtil.java:155) at org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration(ConfigurationUtil.java:126) at org.apache.geronimo.system.main.Daemon.doStartup(Daemon.java:242) at org.apache.geronimo.system.main.Daemon.init(Daemon.java:74) at org.apache.geronimo.system.main.Daemon.main(Daemon.java:366) Caused by: org.apache.geronimo.gbean.InvalidConfigurationException: Target does not have specified method (declared in a GBeanInfo operation): name=hasGBeanAttr ibutes methodName=hasGBeanAttributes returnType=boolean targetClass=org.apache.geronimo.system.configuration.LocalAttributeManager at org.apache.geronimo.gbean.runtime.GBeanOperation.init(GBeanOperation.java:98) at org.apache.geronimo.gbean.runtime.GBeanInstance.init(GBeanInstance.java:298) at org.apache.geronimo.kernel.basic.BasicKernel.loadGBean(BasicKernel.java:354) at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:363) ... 5 more org.apache.geronimo.kernel.config.InvalidConfigException: Unknown start exception at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:444) at org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration(ConfigurationUtil.java:155) at org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration(ConfigurationUtil.java:126) at org.apache.geronimo.system.main.Daemon.doStartup(Daemon.java:242) at org.apache.geronimo.system.main.Daemon.init(Daemon.java:74) at org.apache.geronimo.system.main.Daemon.main(Daemon.java:366) Caused by: org.apache.geronimo.gbean.InvalidConfigurationException: Target does not have specified method (declared in a GBeanInfo operation): name=hasGBeanAttr ibutes methodName=hasGBeanAttributes returnType=boolean targetClass=org.apache.geronimo.system.configuration.LocalAttributeManager at org.apache.geronimo.gbean.runtime.GBeanOperation.init(GBeanOperation.java:98) at org.apache.geronimo.gbean.runtime.GBeanInstance.init(GBeanInstance.java:298) at org.apache.geronimo.kernel.basic.BasicKernel.loadGBean(BasicKernel.java:354) at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:363) ... 5 more Server shutdown begun Server shutdown completed
Re: svn commit: r485321 - in /geronimo/server/trunk/modules: geronimo-kernel/src/main/java/org/apache/geronimo/gbean/ geronimo-kernel/src/main/java/org/apache/geronimo/gbean/runtime/ geronimo-kernel/s
Anita, Yes, I did get past it and it doesn't appear to be related to your earlier change. I'm not sure how I (or you) got into this problem ... but here's how I got out of it. I did a complete new build (starting with -Dstage=bootstrap) with a clean repo. I suspect there might still be some issues building multiple releases that caused it (I was building both trunk and 2.0-M1) but I'm not really certain. Hope that helps, Joe anita kulshreshtha wrote: Joe, Did you get past this? I am also unable to start geronimo-tomcat6-jee5 built with rev 487196. However I can start geronimo-tomcat6-minimal. The rev 485321 was committed on Dec 10th. The changes discussed recently will not be ready for 2.0-M1. I do not think(?) this is the culprit, But I will be happy to revert this. Thanks Anita --- Joe Bohn [EMAIL PROTECTED] wrote: Anita, Are these changes completed? I'm hitting an error with attempting to start the servers from a fresh trunk build and they might be related (but then again I'm not feeling well and I'm pretty tired ... so I could have something messed up locally). Here's the failure: Booting Geronimo Kernel (in Java 1.5.0_06)... 23:12:51,538 WARN [ConfigurationUtil] Could not load gbean org.apache.geronimo.configs/j2ee-system/2.0-SNAPSHOT/car?ServiceModule=org.apache.geronimo.configs/j 2ee-system/2.0-SNAPSHOT/car,j2eeType=AttributeStore,name=AttributeManager org.apache.geronimo.gbean.InvalidConfigurationException: Target does not have specified method (declared in a GBeanInfo operation): name=hasGBeanAttributes meth odName=hasGBeanAttributes returnType=boolean targetClass=org.apache.geronimo.system.configuration.LocalAttributeManager at org.apache.geronimo.gbean.runtime.GBeanOperation.init(GBeanOperation.java:98) at org.apache.geronimo.gbean.runtime.GBeanInstance.init(GBeanInstance.java:298) at org.apache.geronimo.kernel.basic.BasicKernel.loadGBean(BasicKernel.java:354) at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:363) at org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration(ConfigurationUtil.java:155) at org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration(ConfigurationUtil.java:126) at org.apache.geronimo.system.main.Daemon.doStartup(Daemon.java:242) at org.apache.geronimo.system.main.Daemon.init(Daemon.java:74) at org.apache.geronimo.system.main.Daemon.main(Daemon.java:366) [ ] 0% 1s Startup failed org.apache.geronimo.kernel.config.InvalidConfigException: Unknown start exception at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:444) at org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration(ConfigurationUtil.java:155) at org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration(ConfigurationUtil.java:126) at org.apache.geronimo.system.main.Daemon.doStartup(Daemon.java:242) at org.apache.geronimo.system.main.Daemon.init(Daemon.java:74) at org.apache.geronimo.system.main.Daemon.main(Daemon.java:366) Caused by: org.apache.geronimo.gbean.InvalidConfigurationException: Target does not have specified method (declared in a GBeanInfo operation): name=hasGBeanAttr ibutes methodName=hasGBeanAttributes returnType=boolean targetClass=org.apache.geronimo.system.configuration.LocalAttributeManager at org.apache.geronimo.gbean.runtime.GBeanOperation.init(GBeanOperation.java:98) at org.apache.geronimo.gbean.runtime.GBeanInstance.init(GBeanInstance.java:298) at org.apache.geronimo.kernel.basic.BasicKernel.loadGBean(BasicKernel.java:354) at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:363) ... 5 more org.apache.geronimo.kernel.config.InvalidConfigException: Unknown start exception at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:444) at org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration(ConfigurationUtil.java:155) at org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration(ConfigurationUtil.java:126) at org.apache.geronimo.system.main.Daemon.doStartup(Daemon.java:242) at org.apache.geronimo.system.main.Daemon.init(Daemon.java:74) at org.apache.geronimo.system.main.Daemon.main(Daemon.java:366) Caused by: org.apache.geronimo.gbean.InvalidConfigurationException: Target does not have specified method (declared in a GBeanInfo operation): name=hasGBeanAttr ibutes methodName=hasGBeanAttributes returnType=boolean targetClass=org.apache.geronimo.system.configuration.LocalAttributeManager at
Re: svn commit: r485321 - in /geronimo/server/trunk/modules: geronimo-kernel/src/main/java/org/apache/geronimo/gbean/ geronimo-kernel/src/main/java/org/apache/geronimo/gbean/runtime/ geronimo-kernel/s
Ugh ... now I'm not so sure. I'm seeing different results on different machines. I'm still getting this error on one of the machines with different builds. I'm still getting this error on one of the machines. The other machine is hitting something slightly different after I just did a complete rebuild. I'm not sure what's going on with these failures. Joe Joe Bohn wrote: Anita, Yes, I did get past it and it doesn't appear to be related to your earlier change. I'm not sure how I (or you) got into this problem ... but here's how I got out of it. I did a complete new build (starting with -Dstage=bootstrap) with a clean repo. I suspect there might still be some issues building multiple releases that caused it (I was building both trunk and 2.0-M1) but I'm not really certain. Hope that helps, Joe anita kulshreshtha wrote: Joe, Did you get past this? I am also unable to start geronimo-tomcat6-jee5 built with rev 487196. However I can start geronimo-tomcat6-minimal. The rev 485321 was committed on Dec 10th. The changes discussed recently will not be ready for 2.0-M1. I do not think(?) this is the culprit, But I will be happy to revert this. Thanks Anita --- Joe Bohn [EMAIL PROTECTED] wrote: Anita, Are these changes completed? I'm hitting an error with attempting to start the servers from a fresh trunk build and they might be related (but then again I'm not feeling well and I'm pretty tired ... so I could have something messed up locally). Here's the failure: Booting Geronimo Kernel (in Java 1.5.0_06)... 23:12:51,538 WARN [ConfigurationUtil] Could not load gbean org.apache.geronimo.configs/j2ee-system/2.0-SNAPSHOT/car?ServiceModule=org.apache.geronimo.configs/j 2ee-system/2.0-SNAPSHOT/car,j2eeType=AttributeStore,name=AttributeManager org.apache.geronimo.gbean.InvalidConfigurationException: Target does not have specified method (declared in a GBeanInfo operation): name=hasGBeanAttributes meth odName=hasGBeanAttributes returnType=boolean targetClass=org.apache.geronimo.system.configuration.LocalAttributeManager at org.apache.geronimo.gbean.runtime.GBeanOperation.init(GBeanOperation.java:98) at org.apache.geronimo.gbean.runtime.GBeanInstance.init(GBeanInstance.java:298) at org.apache.geronimo.kernel.basic.BasicKernel.loadGBean(BasicKernel.java:354) at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:363) at org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration(ConfigurationUtil.java:155) at org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration(ConfigurationUtil.java:126) at org.apache.geronimo.system.main.Daemon.doStartup(Daemon.java:242) at org.apache.geronimo.system.main.Daemon.init(Daemon.java:74) at org.apache.geronimo.system.main.Daemon.main(Daemon.java:366) [ ] 0% 1s Startup failed org.apache.geronimo.kernel.config.InvalidConfigException: Unknown start exception at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:444) at org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration(ConfigurationUtil.java:155) at org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration(ConfigurationUtil.java:126) at org.apache.geronimo.system.main.Daemon.doStartup(Daemon.java:242) at org.apache.geronimo.system.main.Daemon.init(Daemon.java:74) at org.apache.geronimo.system.main.Daemon.main(Daemon.java:366) Caused by: org.apache.geronimo.gbean.InvalidConfigurationException: Target does not have specified method (declared in a GBeanInfo operation): name=hasGBeanAttr ibutes methodName=hasGBeanAttributes returnType=boolean targetClass=org.apache.geronimo.system.configuration.LocalAttributeManager at org.apache.geronimo.gbean.runtime.GBeanOperation.init(GBeanOperation.java:98) at org.apache.geronimo.gbean.runtime.GBeanInstance.init(GBeanInstance.java:298) at org.apache.geronimo.kernel.basic.BasicKernel.loadGBean(BasicKernel.java:354) at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:363) ... 5 more org.apache.geronimo.kernel.config.InvalidConfigException: Unknown start exception at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:444) at org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration(ConfigurationUtil.java:155) at org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration(ConfigurationUtil.java:126) at org.apache.geronimo.system.main.Daemon.doStartup(Daemon.java:242) at
Re: svn commit: r485321 - in /geronimo/server/trunk/modules: geronimo-kernel/src/main/java/org/apache/geronimo/gbean/ geronimo-kernel/src/main/java/org/apache/geronimo/gbean/runtime/ geronimo-kernel/s
Joe, I had commented out boilerplate-j2ee from the assembly pom to make the build go faster.. I did not know that it was being used in boilerplate-jee5 from .m2 repo. I built it and now the tomcat6-jee5 server starts. Thanks Anita --- Joe Bohn [EMAIL PROTECTED] wrote: Anita, Yes, I did get past it and it doesn't appear to be related to your earlier change. I'm not sure how I (or you) got into this problem ... but here's how I got out of it. I did a complete new build (starting with -Dstage=bootstrap) with a clean repo. I suspect there might still be some issues building multiple releases that caused it (I was building both trunk and 2.0-M1) but I'm not really certain. Hope that helps, Joe anita kulshreshtha wrote: Joe, Did you get past this? I am also unable to start geronimo-tomcat6-jee5 built with rev 487196. However I can start geronimo-tomcat6-minimal. The rev 485321 was committed on Dec 10th. The changes discussed recently will not be ready for 2.0-M1. I do not think(?) this is the culprit, But I will be happy to revert this. Thanks Anita --- Joe Bohn [EMAIL PROTECTED] wrote: Anita, Are these changes completed? I'm hitting an error with attempting to start the servers from a fresh trunk build and they might be related (but then again I'm not feeling well and I'm pretty tired ... so I could have something messed up locally). Here's the failure: Booting Geronimo Kernel (in Java 1.5.0_06)... 23:12:51,538 WARN [ConfigurationUtil] Could not load gbean org.apache.geronimo.configs/j2ee-system/2.0-SNAPSHOT/car?ServiceModule=org.apache.geronimo.configs/j 2ee-system/2.0-SNAPSHOT/car,j2eeType=AttributeStore,name=AttributeManager org.apache.geronimo.gbean.InvalidConfigurationException: Target does not have specified method (declared in a GBeanInfo operation): name=hasGBeanAttributes meth odName=hasGBeanAttributes returnType=boolean targetClass=org.apache.geronimo.system.configuration.LocalAttributeManager at org.apache.geronimo.gbean.runtime.GBeanOperation.init(GBeanOperation.java:98) at org.apache.geronimo.gbean.runtime.GBeanInstance.init(GBeanInstance.java:298) at org.apache.geronimo.kernel.basic.BasicKernel.loadGBean(BasicKernel.java:354) at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:363) at org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration(ConfigurationUtil.java:155) at org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration(ConfigurationUtil.java:126) at org.apache.geronimo.system.main.Daemon.doStartup(Daemon.java:242) at org.apache.geronimo.system.main.Daemon.init(Daemon.java:74) at org.apache.geronimo.system.main.Daemon.main(Daemon.java:366) [ ] 0% 1s Startup failed org.apache.geronimo.kernel.config.InvalidConfigException: Unknown start exception at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:444) at org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration(ConfigurationUtil.java:155) at org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration(ConfigurationUtil.java:126) at org.apache.geronimo.system.main.Daemon.doStartup(Daemon.java:242) at org.apache.geronimo.system.main.Daemon.init(Daemon.java:74) at org.apache.geronimo.system.main.Daemon.main(Daemon.java:366) Caused by: org.apache.geronimo.gbean.InvalidConfigurationException: Target does not have specified method (declared in a GBeanInfo operation): name=hasGBeanAttr ibutes methodName=hasGBeanAttributes returnType=boolean targetClass=org.apache.geronimo.system.configuration.LocalAttributeManager at org.apache.geronimo.gbean.runtime.GBeanOperation.init(GBeanOperation.java:98) at org.apache.geronimo.gbean.runtime.GBeanInstance.init(GBeanInstance.java:298) at org.apache.geronimo.kernel.basic.BasicKernel.loadGBean(BasicKernel.java:354) at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:363) ... 5 more org.apache.geronimo.kernel.config.InvalidConfigException: Unknown start exception at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:444) at org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration(ConfigurationUtil.java:155) at org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration(ConfigurationUtil.java:126)
Re: svn commit: r485321 - in /geronimo/server/trunk/modules: geronimo-kernel/src/main/java/org/apache/geronimo/gbean/ geronimo-kernel/src/main/java/org/apache/geronimo/gbean/runtime/ geronimo-kernel/s
Ok, after doing multiple builds I think this is related to performing alternative builds between multiple geronimo releases. If I stick with one release then I don't seem to hit this problem. Joe Joe Bohn wrote: Ugh ... now I'm not so sure. I'm seeing different results on different machines. I'm still getting this error on one of the machines with different builds. I'm still getting this error on one of the machines. The other machine is hitting something slightly different after I just did a complete rebuild. I'm not sure what's going on with these failures. Joe Joe Bohn wrote: Anita, Yes, I did get past it and it doesn't appear to be related to your earlier change. I'm not sure how I (or you) got into this problem ... but here's how I got out of it. I did a complete new build (starting with -Dstage=bootstrap) with a clean repo. I suspect there might still be some issues building multiple releases that caused it (I was building both trunk and 2.0-M1) but I'm not really certain. Hope that helps, Joe anita kulshreshtha wrote: Joe, Did you get past this? I am also unable to start geronimo-tomcat6-jee5 built with rev 487196. However I can start geronimo-tomcat6-minimal. The rev 485321 was committed on Dec 10th. The changes discussed recently will not be ready for 2.0-M1. I do not think(?) this is the culprit, But I will be happy to revert this. Thanks Anita --- Joe Bohn [EMAIL PROTECTED] wrote: Anita, Are these changes completed? I'm hitting an error with attempting to start the servers from a fresh trunk build and they might be related (but then again I'm not feeling well and I'm pretty tired ... so I could have something messed up locally). Here's the failure: Booting Geronimo Kernel (in Java 1.5.0_06)... 23:12:51,538 WARN [ConfigurationUtil] Could not load gbean org.apache.geronimo.configs/j2ee-system/2.0-SNAPSHOT/car?ServiceModule=org.apache.geronimo.configs/j 2ee-system/2.0-SNAPSHOT/car,j2eeType=AttributeStore,name=AttributeManager org.apache.geronimo.gbean.InvalidConfigurationException: Target does not have specified method (declared in a GBeanInfo operation): name=hasGBeanAttributes meth odName=hasGBeanAttributes returnType=boolean targetClass=org.apache.geronimo.system.configuration.LocalAttributeManager at org.apache.geronimo.gbean.runtime.GBeanOperation.init(GBeanOperation.java:98) at org.apache.geronimo.gbean.runtime.GBeanInstance.init(GBeanInstance.java:298) at org.apache.geronimo.kernel.basic.BasicKernel.loadGBean(BasicKernel.java:354) at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:363) at org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration(ConfigurationUtil.java:155) at org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration(ConfigurationUtil.java:126) at org.apache.geronimo.system.main.Daemon.doStartup(Daemon.java:242) at org.apache.geronimo.system.main.Daemon.init(Daemon.java:74) at org.apache.geronimo.system.main.Daemon.main(Daemon.java:366) [ ] 0% 1s Startup failed org.apache.geronimo.kernel.config.InvalidConfigException: Unknown start exception at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:444) at org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration(ConfigurationUtil.java:155) at org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration(ConfigurationUtil.java:126) at org.apache.geronimo.system.main.Daemon.doStartup(Daemon.java:242) at org.apache.geronimo.system.main.Daemon.init(Daemon.java:74) at org.apache.geronimo.system.main.Daemon.main(Daemon.java:366) Caused by: org.apache.geronimo.gbean.InvalidConfigurationException: Target does not have specified method (declared in a GBeanInfo operation): name=hasGBeanAttr ibutes methodName=hasGBeanAttributes returnType=boolean targetClass=org.apache.geronimo.system.configuration.LocalAttributeManager at org.apache.geronimo.gbean.runtime.GBeanOperation.init(GBeanOperation.java:98) at org.apache.geronimo.gbean.runtime.GBeanInstance.init(GBeanInstance.java:298) at org.apache.geronimo.kernel.basic.BasicKernel.loadGBean(BasicKernel.java:354) at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:363) ... 5 more org.apache.geronimo.kernel.config.InvalidConfigException: Unknown start exception at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:444) at org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration(ConfigurationUtil.java:155)
Re: svn commit: r485321 - in /geronimo/server/trunk/modules: geronimo-kernel/src/main/java/org/apache/geronimo/gbean/ geronimo-kernel/src/main/java/org/apache/geronimo/gbean/runtime/ geronimo-kernel/s
Thanks Dain! --- Dain Sundstrom [EMAIL PROTECTED] wrote: On Dec 12, 2006, at 5:32 AM, anita kulshreshtha wrote: Thanks Gianny, David J and Dain for providing feedback. I could have certainly used it before commiting rev 485321. IIUC, here is what needs to be done: 1. .Make the necessary code changes to GBeanInfoBuilder while keeping the signatures of addOperation methods same. API compatibility - yes Serialization compatibility - depends on GOparationInfo 2. GoperationInfo must contain a field named targetClass (declaringClass?). There are 2 options: a.. Just add the field and maintain backward compatibility API compatibility - yes Serialization compatibility - yes b.. Clean the code, i.e. remove unused field methodName and break the compatibility. API compatibility - no Serialization compatibility - no Even in Geronimo GOperationInfo does not seem to be used outside of the kernel, hence it will be safe to remove the constructors without the targetClass. I think we should not allow incomplete GOpeartionInfo objects. But then I do not know what is the protocol for fixing the API... Which backward compatibility API, serialization or both? I prefer we don't break backwards compatibility in the GBean apis since they are used everywhere. I am leaning towards b. 3. The fact that in some cases GBeanInfoBuilder.addInterfaces() Line 295 ends up with two methods with same name and signatures but different return type, it is not by design. Most of the time it is due to a badly overridden getter/setter/operation, and it is not the responsibility of GBeanInfoBuilder to flag that as an error. In Java5 a method is allowed to override/implement a method with a return type that is more specific. For example: public interface Intf { Object getSomething(); } public class Clazz implements Intf { public String getSomething() { return something } } -dain Ah.. java 5... One more question :) Why do we allow bad operations in GBeanInfo ? For example it is possible to add a non existent operation to GBeanInfo. Thanks Anita Any questions? Get answers on any topic at www.Answers.yahoo.com. Try it now.
Re: svn commit: r485321 - in /geronimo/server/trunk/modules: geronimo-kernel/src/main/java/org/apache/geronimo/gbean/ geronimo-kernel/src/main/java/org/apache/geronimo/gbean/runtime/ geronimo-kernel/s
On Dec 13, 2006, at 6:00 AM, anita kulshreshtha wrote: Ah.. java 5... One more question :) Why do we allow bad operations in GBeanInfo ? For example it is possible to add a non existent operation to GBeanInfo. No idea. In general beans shouldn't be declaring operations. Instead they should let the info builder automatically add all methods in the class. I'd suggest deprecate the methods for declaring operation infos and then delete the places where they are declared. Then just leave the operation info the way it is, so we have serialization backwards compatibility. -dain
Re: svn commit: r485321 - in /geronimo/server/trunk/modules: geronimo-kernel/src/main/java/org/apache/geronimo/gbean/ geronimo-kernel/src/main/java/org/apache/geronimo/gbean/runtime/ geronimo-kernel/s
Anita, Are these changes completed? I'm hitting an error with attempting to start the servers from a fresh trunk build and they might be related (but then again I'm not feeling well and I'm pretty tired ... so I could have something messed up locally). Here's the failure: Booting Geronimo Kernel (in Java 1.5.0_06)... 23:12:51,538 WARN [ConfigurationUtil] Could not load gbean org.apache.geronimo.configs/j2ee-system/2.0-SNAPSHOT/car?ServiceModule=org.apache.geronimo.configs/j 2ee-system/2.0-SNAPSHOT/car,j2eeType=AttributeStore,name=AttributeManager org.apache.geronimo.gbean.InvalidConfigurationException: Target does not have specified method (declared in a GBeanInfo operation): name=hasGBeanAttributes meth odName=hasGBeanAttributes returnType=boolean targetClass=org.apache.geronimo.system.configuration.LocalAttributeManager at org.apache.geronimo.gbean.runtime.GBeanOperation.init(GBeanOperation.java:98) at org.apache.geronimo.gbean.runtime.GBeanInstance.init(GBeanInstance.java:298) at org.apache.geronimo.kernel.basic.BasicKernel.loadGBean(BasicKernel.java:354) at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:363) at org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration(ConfigurationUtil.java:155) at org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration(ConfigurationUtil.java:126) at org.apache.geronimo.system.main.Daemon.doStartup(Daemon.java:242) at org.apache.geronimo.system.main.Daemon.init(Daemon.java:74) at org.apache.geronimo.system.main.Daemon.main(Daemon.java:366) [ ] 0% 1s Startup failed org.apache.geronimo.kernel.config.InvalidConfigException: Unknown start exception at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:444) at org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration(ConfigurationUtil.java:155) at org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration(ConfigurationUtil.java:126) at org.apache.geronimo.system.main.Daemon.doStartup(Daemon.java:242) at org.apache.geronimo.system.main.Daemon.init(Daemon.java:74) at org.apache.geronimo.system.main.Daemon.main(Daemon.java:366) Caused by: org.apache.geronimo.gbean.InvalidConfigurationException: Target does not have specified method (declared in a GBeanInfo operation): name=hasGBeanAttr ibutes methodName=hasGBeanAttributes returnType=boolean targetClass=org.apache.geronimo.system.configuration.LocalAttributeManager at org.apache.geronimo.gbean.runtime.GBeanOperation.init(GBeanOperation.java:98) at org.apache.geronimo.gbean.runtime.GBeanInstance.init(GBeanInstance.java:298) at org.apache.geronimo.kernel.basic.BasicKernel.loadGBean(BasicKernel.java:354) at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:363) ... 5 more org.apache.geronimo.kernel.config.InvalidConfigException: Unknown start exception at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:444) at org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration(ConfigurationUtil.java:155) at org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration(ConfigurationUtil.java:126) at org.apache.geronimo.system.main.Daemon.doStartup(Daemon.java:242) at org.apache.geronimo.system.main.Daemon.init(Daemon.java:74) at org.apache.geronimo.system.main.Daemon.main(Daemon.java:366) Caused by: org.apache.geronimo.gbean.InvalidConfigurationException: Target does not have specified method (declared in a GBeanInfo operation): name=hasGBeanAttr ibutes methodName=hasGBeanAttributes returnType=boolean targetClass=org.apache.geronimo.system.configuration.LocalAttributeManager at org.apache.geronimo.gbean.runtime.GBeanOperation.init(GBeanOperation.java:98) at org.apache.geronimo.gbean.runtime.GBeanInstance.init(GBeanInstance.java:298) at org.apache.geronimo.kernel.basic.BasicKernel.loadGBean(BasicKernel.java:354) at org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:363) ... 5 more Server shutdown begun Server shutdown completed Thanks, Joe anita kulshreshtha wrote: Thanks Dain! --- Dain Sundstrom [EMAIL PROTECTED] wrote: On Dec 12, 2006, at 5:32 AM, anita kulshreshtha wrote: Thanks Gianny, David J and Dain for providing feedback. I could have certainly used it before commiting rev 485321. IIUC, here is what needs to be done: 1. .Make the necessary code changes to GBeanInfoBuilder while keeping the signatures of addOperation methods same. API compatibility - yes Serialization compatibility
Re: svn commit: r485321 - in /geronimo/server/trunk/modules: geronimo-kernel/src/main/java/org/apache/geronimo/gbean/ geronimo-kernel/src/main/java/org/apache/geronimo/gbean/runtime/ geronimo-kernel/s
Thanks Gianny, David J and Dain for providing feedback. I could have certainly used it before commiting rev 485321. IIUC, here is what needs to be done: 1. Revert rev 485321. Make the necessary code changes to GBeanInfoBuilder while keeping the signatures of addOpeartion methods same. 2. GoperationInfo must contain a field named targetClass (declaringClass?). There are 2 options: a.. Just add the field and maintain backward compatibility b.. Clean the code, i.e. remove unused field methodName and break the compatibility. I am leaning towards b. 3. The fact that in some cases GBeanInfoBuilder.addInterfaces() Line 295 ends up with two methods with same name and signatures but different return type, it is not by design. Most of the time it is due to a badly overridden getter/setter/operation, and it is not the responsibility of GBeanInfoBuilder to flag that as an error. After the modification proposed in 2, the two operations will have different GOpearationInfo. AFAIK, this is not an issue when operations are added using addOparation. I am going to revert rev 485321 today. Thanks Anita --- David Jencks [EMAIL PROTECTED] wrote: On Dec 11, 2006, at 7:18 AM, anita kulshreshtha wrote: When we add inteface using addInterface(..), we can end up with two methods like this. You can't have a class that implements both interfaces if they have methods whose signature differs only in the return type. If there are problems with trying to expose management interfaces that are not actually implemented by the underlying bean maybe we should look for other ways of dealing with the management aspects. Are there actual problems with existing gbeans extracting the return type for operations? If so, please indicate which gbean and which operation I don't want to get lost in too much abstraction as I so often do :-) I very much share Gianni's concerns and was about to write a similar note. thanks david jencks This is not a very good example because the objectName will end up as an attribute in GBeanInfoBuilder, not an operation. thanks Anita --- Vamsavardhana Reddy [EMAIL PROTECTED] wrote: It is not allowed to have public Object getObjectName() and public String getObjectName() simultaneously. --vamsi On 12/11/06, anita kulshreshtha [EMAIL PROTECTED] wrote: Gianny, Thanks for looking into this. I did consider the easy way out. But the retrun type is part of the method signature. What happens if we have public class Myclass { public Object getObjectName() public String getObjectName() .. } If JMXUtil was patched which one should it return? Thanks Anita --- Gianny Damour [EMAIL PROTECTED] wrote: Hi, I am quickly scanning this commit and I would like to know if it was not a little bit less intrusive to keep the existing addOperation and search for the return type of the added operations against the target gbeanType. This way, developers do not need to specify the return type of the operations (also, the migration of the existing GBeanInfo could have been avoided). After reading GERONIMO-2607, it seems that the goal of the change was to have a return type defined within JConsole for the GBean operations. It seems that patching JMXUtil.toMBeanInfo would have been another implementation approach: while getting the exposed operations, the GBean class could be searched for returned types. One of the advantages would have been to keep backward compatibility. Thanks, Gianny On 11/12/2006, at 11:14 AM, [EMAIL PROTECTED] wrote: Author: akulshreshtha Date: Sun Dec 10 16:14:46 2006 New Revision: 485321 URL: http://svn.apache.org/viewvc?view=revrev=485321 Log: GERONIMO-2607 Added returnType to GOperationInfo, This modifies GBeanInfoBuilder and breaks backward compatibility Modified: geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/DynamicGOperationInfo.java geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/GBeanInfoBuilder.java geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/GOperationInfo.java geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/runtime/GBeanOperation.java geronimo/server/trunk/modules/geronimo-kernel/src/test/java/org/ apache/geronimo/gbean/GBeanInfoTest.java geronimo/server/trunk/modules/geronimo-kernel/src/test/java/org/ apache/geronimo/kernel/MockGBean.java geronimo/server/trunk/modules/geronimo-kernel/src/test/java/org/ apache/geronimo/kernel/config/MyGBean.java geronimo/server/trunk/modules/geronimo-system/src/main/java/org/ apache/geronimo/system/jmx/JMXUtil.java geronimo/server/trunk/modules/geronimo-system/src/main/java/org/
Re: svn commit: r485321 - in /geronimo/server/trunk/modules: geronimo-kernel/src/main/java/org/apache/geronimo/gbean/ geronimo-kernel/src/main/java/org/apache/geronimo/gbean/runtime/ geronimo-kernel/s
On Dec 12, 2006, at 5:32 AM, anita kulshreshtha wrote: Thanks Gianny, David J and Dain for providing feedback. I could have certainly used it before commiting rev 485321. IIUC, here is what needs to be done: 1. Revert rev 485321. Make the necessary code changes to GBeanInfoBuilder while keeping the signatures of addOpeartion methods same. 2. GoperationInfo must contain a field named targetClass (declaringClass?). There are 2 options: a.. Just add the field and maintain backward compatibility b.. Clean the code, i.e. remove unused field methodName and break the compatibility. Which backward compatibility API, serialization or both? I prefer we don't break backwards compatibility in the GBean apis since they are used everywhere. I am leaning towards b. 3. The fact that in some cases GBeanInfoBuilder.addInterfaces() Line 295 ends up with two methods with same name and signatures but different return type, it is not by design. Most of the time it is due to a badly overridden getter/setter/operation, and it is not the responsibility of GBeanInfoBuilder to flag that as an error. In Java5 a method is allowed to override/implement a method with a return type that is more specific. For example: public interface Intf { Object getSomething(); } public class Clazz implements Intf { public String getSomething() { return something } } -dain
Re: svn commit: r485321 - in /geronimo/server/trunk/modules: geronimo-kernel/src/main/java/org/apache/geronimo/gbean/ geronimo-kernel/src/main/java/org/apache/geronimo/gbean/runtime/ geronimo-kernel/s
Hi, I am quickly scanning this commit and I would like to know if it was not a little bit less intrusive to keep the existing addOperation and search for the return type of the added operations against the target gbeanType. This way, developers do not need to specify the return type of the operations (also, the migration of the existing GBeanInfo could have been avoided). After reading GERONIMO-2607, it seems that the goal of the change was to have a return type defined within JConsole for the GBean operations. It seems that patching JMXUtil.toMBeanInfo would have been another implementation approach: while getting the exposed operations, the GBean class could be searched for returned types. One of the advantages would have been to keep backward compatibility. Thanks, Gianny On 11/12/2006, at 11:14 AM, [EMAIL PROTECTED] wrote: Author: akulshreshtha Date: Sun Dec 10 16:14:46 2006 New Revision: 485321 URL: http://svn.apache.org/viewvc?view=revrev=485321 Log: GERONIMO-2607 Added returnType to GOperationInfo, This modifies GBeanInfoBuilder and breaks backward compatibility Modified: geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/DynamicGOperationInfo.java geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/GBeanInfoBuilder.java geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/GOperationInfo.java geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/runtime/GBeanOperation.java geronimo/server/trunk/modules/geronimo-kernel/src/test/java/org/ apache/geronimo/gbean/GBeanInfoTest.java geronimo/server/trunk/modules/geronimo-kernel/src/test/java/org/ apache/geronimo/kernel/MockGBean.java geronimo/server/trunk/modules/geronimo-kernel/src/test/java/org/ apache/geronimo/kernel/config/MyGBean.java geronimo/server/trunk/modules/geronimo-system/src/main/java/org/ apache/geronimo/system/jmx/JMXUtil.java geronimo/server/trunk/modules/geronimo-system/src/main/java/org/ apache/geronimo/system/logging/log4j/Log4jService.java Modified: geronimo/server/trunk/modules/geronimo-kernel/src/main/ java/org/apache/geronimo/gbean/DynamicGOperationInfo.java URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/ geronimo-kernel/src/main/java/org/apache/geronimo/gbean/ DynamicGOperationInfo.java?view=diffrev=485321r1=485320r2=485321 == --- geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/DynamicGOperationInfo.java (original) +++ geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/DynamicGOperationInfo.java Sun Dec 10 16:14:46 2006 @@ -24,14 +24,14 @@ */ public class DynamicGOperationInfo extends GOperationInfo { public DynamicGOperationInfo(String name) { -super(name); +super(name, java.lang.Object); } public DynamicGOperationInfo(String name, String[] paramTypes) { -super(name, paramTypes); +super(name, paramTypes, java.lang.Object); } public DynamicGOperationInfo(String name, List parameters) { -super(name, parameters); +super(name, parameters, java.lang.Object); } } Modified: geronimo/server/trunk/modules/geronimo-kernel/src/main/ java/org/apache/geronimo/gbean/GBeanInfoBuilder.java URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/ geronimo-kernel/src/main/java/org/apache/geronimo/gbean/ GBeanInfoBuilder.java?view=diffrev=485321r1=485320r2=485321 == --- geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/GBeanInfoBuilder.java (original) +++ geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/GBeanInfoBuilder.java Sun Dec 10 16:14:46 2006 @@ -187,8 +187,7 @@ for (Iterator i = source.getOperations().iterator(); i.hasNext();) { GOperationInfo operationInfo = (GOperationInfo) i.next(); -operations.put(new GOperationSignature (operationInfo.getName(), -operationInfo.getParameterList()), operationInfo); +operations.put(new GOperationSignature (operationInfo.getName(), operationInfo.getParameterList()), operationInfo); } for (Iterator iterator = source.getReferences ().iterator(); iterator.hasNext();) { @@ -346,7 +345,7 @@ method.getName())); } } else { -addOperation(new GOperationInfo(method.getName(), method.getParameterTypes())); +addOperation(new GOperationInfo(method.getName(), method.getParameterTypes(), method.getReturnType().getName())); } }
Re: svn commit: r485321 - in /geronimo/server/trunk/modules: geronimo-kernel/src/main/java/org/apache/geronimo/gbean/ geronimo-kernel/src/main/java/org/apache/geronimo/gbean/runtime/ geronimo-kernel/s
Gianny, Thanks for looking into this. I did consider the easy way out. But the retrun type is part of the method signature. What happens if we have public class Myclass { public Object getObjectName() public String getObjectName() .. } If JMXUtil was patched which one should it return? Thanks Anita --- Gianny Damour [EMAIL PROTECTED] wrote: Hi, I am quickly scanning this commit and I would like to know if it was not a little bit less intrusive to keep the existing addOperation and search for the return type of the added operations against the target gbeanType. This way, developers do not need to specify the return type of the operations (also, the migration of the existing GBeanInfo could have been avoided). After reading GERONIMO-2607, it seems that the goal of the change was to have a return type defined within JConsole for the GBean operations. It seems that patching JMXUtil.toMBeanInfo would have been another implementation approach: while getting the exposed operations, the GBean class could be searched for returned types. One of the advantages would have been to keep backward compatibility. Thanks, Gianny On 11/12/2006, at 11:14 AM, [EMAIL PROTECTED] wrote: Author: akulshreshtha Date: Sun Dec 10 16:14:46 2006 New Revision: 485321 URL: http://svn.apache.org/viewvc?view=revrev=485321 Log: GERONIMO-2607 Added returnType to GOperationInfo, This modifies GBeanInfoBuilder and breaks backward compatibility Modified: geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/DynamicGOperationInfo.java geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/GBeanInfoBuilder.java geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/GOperationInfo.java geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/runtime/GBeanOperation.java geronimo/server/trunk/modules/geronimo-kernel/src/test/java/org/ apache/geronimo/gbean/GBeanInfoTest.java geronimo/server/trunk/modules/geronimo-kernel/src/test/java/org/ apache/geronimo/kernel/MockGBean.java geronimo/server/trunk/modules/geronimo-kernel/src/test/java/org/ apache/geronimo/kernel/config/MyGBean.java geronimo/server/trunk/modules/geronimo-system/src/main/java/org/ apache/geronimo/system/jmx/JMXUtil.java geronimo/server/trunk/modules/geronimo-system/src/main/java/org/ apache/geronimo/system/logging/log4j/Log4jService.java Modified: geronimo/server/trunk/modules/geronimo-kernel/src/main/ java/org/apache/geronimo/gbean/DynamicGOperationInfo.java URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/ geronimo-kernel/src/main/java/org/apache/geronimo/gbean/ DynamicGOperationInfo.java?view=diffrev=485321r1=485320r2=485321 == --- geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/DynamicGOperationInfo.java (original) +++ geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/DynamicGOperationInfo.java Sun Dec 10 16:14:46 2006 @@ -24,14 +24,14 @@ */ public class DynamicGOperationInfo extends GOperationInfo { public DynamicGOperationInfo(String name) { -super(name); +super(name, java.lang.Object); } public DynamicGOperationInfo(String name, String[] paramTypes) { -super(name, paramTypes); +super(name, paramTypes, java.lang.Object); } public DynamicGOperationInfo(String name, List parameters) { -super(name, parameters); +super(name, parameters, java.lang.Object); } } Modified: geronimo/server/trunk/modules/geronimo-kernel/src/main/ java/org/apache/geronimo/gbean/GBeanInfoBuilder.java URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/ geronimo-kernel/src/main/java/org/apache/geronimo/gbean/ GBeanInfoBuilder.java?view=diffrev=485321r1=485320r2=485321 == --- geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/GBeanInfoBuilder.java (original) +++ geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/GBeanInfoBuilder.java Sun Dec 10 16:14:46 2006 @@ -187,8 +187,7 @@ for (Iterator i = source.getOperations().iterator(); i.hasNext();) { GOperationInfo operationInfo = (GOperationInfo) i.next(); -operations.put(new GOperationSignature (operationInfo.getName(), -operationInfo.getParameterList()), operationInfo); +operations.put(new GOperationSignature
Re: svn commit: r485321 - in /geronimo/server/trunk/modules: geronimo-kernel/src/main/java/org/apache/geronimo/gbean/ geronimo-kernel/src/main/java/org/apache/geronimo/gbean/runtime/ geronimo-kernel/s
The GOpeartionInfo has a field: private final String methodName; Which should really have been targetClass or returnType. Currently it is initialized to the name of the method! If we must maintain backward compatibility, I am open to suggestions.. Thanks Anita --- Gianny Damour [EMAIL PROTECTED] wrote: Hi, I am quickly scanning this commit and I would like to know if it was not a little bit less intrusive to keep the existing addOperation and search for the return type of the added operations against the target gbeanType. This way, developers do not need to specify the return type of the operations (also, the migration of the existing GBeanInfo could have been avoided). After reading GERONIMO-2607, it seems that the goal of the change was to have a return type defined within JConsole for the GBean operations. It seems that patching JMXUtil.toMBeanInfo would have been another implementation approach: while getting the exposed operations, the GBean class could be searched for returned types. One of the advantages would have been to keep backward compatibility. Thanks, Gianny On 11/12/2006, at 11:14 AM, [EMAIL PROTECTED] wrote: Author: akulshreshtha Date: Sun Dec 10 16:14:46 2006 New Revision: 485321 URL: http://svn.apache.org/viewvc?view=revrev=485321 Log: GERONIMO-2607 Added returnType to GOperationInfo, This modifies GBeanInfoBuilder and breaks backward compatibility Modified: geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/DynamicGOperationInfo.java geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/GBeanInfoBuilder.java geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/GOperationInfo.java geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/runtime/GBeanOperation.java geronimo/server/trunk/modules/geronimo-kernel/src/test/java/org/ apache/geronimo/gbean/GBeanInfoTest.java geronimo/server/trunk/modules/geronimo-kernel/src/test/java/org/ apache/geronimo/kernel/MockGBean.java geronimo/server/trunk/modules/geronimo-kernel/src/test/java/org/ apache/geronimo/kernel/config/MyGBean.java geronimo/server/trunk/modules/geronimo-system/src/main/java/org/ apache/geronimo/system/jmx/JMXUtil.java geronimo/server/trunk/modules/geronimo-system/src/main/java/org/ apache/geronimo/system/logging/log4j/Log4jService.java Modified: geronimo/server/trunk/modules/geronimo-kernel/src/main/ java/org/apache/geronimo/gbean/DynamicGOperationInfo.java URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/ geronimo-kernel/src/main/java/org/apache/geronimo/gbean/ DynamicGOperationInfo.java?view=diffrev=485321r1=485320r2=485321 == --- geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/DynamicGOperationInfo.java (original) +++ geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/DynamicGOperationInfo.java Sun Dec 10 16:14:46 2006 @@ -24,14 +24,14 @@ */ public class DynamicGOperationInfo extends GOperationInfo { public DynamicGOperationInfo(String name) { -super(name); +super(name, java.lang.Object); } public DynamicGOperationInfo(String name, String[] paramTypes) { -super(name, paramTypes); +super(name, paramTypes, java.lang.Object); } public DynamicGOperationInfo(String name, List parameters) { -super(name, parameters); +super(name, parameters, java.lang.Object); } } Modified: geronimo/server/trunk/modules/geronimo-kernel/src/main/ java/org/apache/geronimo/gbean/GBeanInfoBuilder.java URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/ geronimo-kernel/src/main/java/org/apache/geronimo/gbean/ GBeanInfoBuilder.java?view=diffrev=485321r1=485320r2=485321 == --- geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/GBeanInfoBuilder.java (original) +++ geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/GBeanInfoBuilder.java Sun Dec 10 16:14:46 2006 @@ -187,8 +187,7 @@ for (Iterator i = source.getOperations().iterator(); i.hasNext();) { GOperationInfo operationInfo = (GOperationInfo) i.next(); -operations.put(new GOperationSignature (operationInfo.getName(), -operationInfo.getParameterList()), operationInfo); +operations.put(new GOperationSignature (operationInfo.getName(), operationInfo.getParameterList()),
Re: svn commit: r485321 - in /geronimo/server/trunk/modules: geronimo-kernel/src/main/java/org/apache/geronimo/gbean/ geronimo-kernel/src/main/java/org/apache/geronimo/gbean/runtime/ geronimo-kernel/s
It is not allowed to have public Object getObjectName() and public String getObjectName() simultaneously. --vamsi On 12/11/06, anita kulshreshtha [EMAIL PROTECTED] wrote: Gianny, Thanks for looking into this. I did consider the easy way out. But the retrun type is part of the method signature. What happens if we have public class Myclass { public Object getObjectName() public String getObjectName() .. } If JMXUtil was patched which one should it return? Thanks Anita --- Gianny Damour [EMAIL PROTECTED] wrote: Hi, I am quickly scanning this commit and I would like to know if it was not a little bit less intrusive to keep the existing addOperation and search for the return type of the added operations against the target gbeanType. This way, developers do not need to specify the return type of the operations (also, the migration of the existing GBeanInfo could have been avoided). After reading GERONIMO-2607, it seems that the goal of the change was to have a return type defined within JConsole for the GBean operations. It seems that patching JMXUtil.toMBeanInfo would have been another implementation approach: while getting the exposed operations, the GBean class could be searched for returned types. One of the advantages would have been to keep backward compatibility. Thanks, Gianny On 11/12/2006, at 11:14 AM, [EMAIL PROTECTED] wrote: Author: akulshreshtha Date: Sun Dec 10 16:14:46 2006 New Revision: 485321 URL: http://svn.apache.org/viewvc?view=revrev=485321 Log: GERONIMO-2607 Added returnType to GOperationInfo, This modifies GBeanInfoBuilder and breaks backward compatibility Modified: geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/DynamicGOperationInfo.java geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/GBeanInfoBuilder.java geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/GOperationInfo.java geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/runtime/GBeanOperation.java geronimo/server/trunk/modules/geronimo-kernel/src/test/java/org/ apache/geronimo/gbean/GBeanInfoTest.java geronimo/server/trunk/modules/geronimo-kernel/src/test/java/org/ apache/geronimo/kernel/MockGBean.java geronimo/server/trunk/modules/geronimo-kernel/src/test/java/org/ apache/geronimo/kernel/config/MyGBean.java geronimo/server/trunk/modules/geronimo-system/src/main/java/org/ apache/geronimo/system/jmx/JMXUtil.java geronimo/server/trunk/modules/geronimo-system/src/main/java/org/ apache/geronimo/system/logging/log4j/Log4jService.java Modified: geronimo/server/trunk/modules/geronimo-kernel/src/main/ java/org/apache/geronimo/gbean/DynamicGOperationInfo.java URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/ geronimo-kernel/src/main/java/org/apache/geronimo/gbean/ DynamicGOperationInfo.java?view=diffrev=485321r1=485320r2=485321 == --- geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/DynamicGOperationInfo.java (original) +++ geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/DynamicGOperationInfo.java Sun Dec 10 16:14:46 2006 @@ -24,14 +24,14 @@ */ public class DynamicGOperationInfo extends GOperationInfo { public DynamicGOperationInfo(String name) { -super(name); +super(name, java.lang.Object); } public DynamicGOperationInfo(String name, String[] paramTypes) { -super(name, paramTypes); +super(name, paramTypes, java.lang.Object); } public DynamicGOperationInfo(String name, List parameters) { -super(name, parameters); +super(name, parameters, java.lang.Object); } } Modified: geronimo/server/trunk/modules/geronimo-kernel/src/main/ java/org/apache/geronimo/gbean/GBeanInfoBuilder.java URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/ geronimo-kernel/src/main/java/org/apache/geronimo/gbean/ GBeanInfoBuilder.java?view=diffrev=485321r1=485320r2=485321 == --- geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/GBeanInfoBuilder.java (original) +++ geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/GBeanInfoBuilder.java Sun Dec 10 16:14:46 2006 @@ -187,8 +187,7 @@ for (Iterator i = source.getOperations().iterator(); i.hasNext();) { GOperationInfo operationInfo = (GOperationInfo) i.next(); -operations.put(new GOperationSignature (operationInfo.getName(), -operationInfo.getParameterList()),
Re: svn commit: r485321 - in /geronimo/server/trunk/modules: geronimo-kernel/src/main/java/org/apache/geronimo/gbean/ geronimo-kernel/src/main/java/org/apache/geronimo/gbean/runtime/ geronimo-kernel/s
When we add inteface using addInterface(..), we can end up with two methods like this. This is not a very good example because the objectName will end up as an attribute in GBeanInfoBuilder, not an operation. thanks Anita --- Vamsavardhana Reddy [EMAIL PROTECTED] wrote: It is not allowed to have public Object getObjectName() and public String getObjectName() simultaneously. --vamsi On 12/11/06, anita kulshreshtha [EMAIL PROTECTED] wrote: Gianny, Thanks for looking into this. I did consider the easy way out. But the retrun type is part of the method signature. What happens if we have public class Myclass { public Object getObjectName() public String getObjectName() .. } If JMXUtil was patched which one should it return? Thanks Anita --- Gianny Damour [EMAIL PROTECTED] wrote: Hi, I am quickly scanning this commit and I would like to know if it was not a little bit less intrusive to keep the existing addOperation and search for the return type of the added operations against the target gbeanType. This way, developers do not need to specify the return type of the operations (also, the migration of the existing GBeanInfo could have been avoided). After reading GERONIMO-2607, it seems that the goal of the change was to have a return type defined within JConsole for the GBean operations. It seems that patching JMXUtil.toMBeanInfo would have been another implementation approach: while getting the exposed operations, the GBean class could be searched for returned types. One of the advantages would have been to keep backward compatibility. Thanks, Gianny On 11/12/2006, at 11:14 AM, [EMAIL PROTECTED] wrote: Author: akulshreshtha Date: Sun Dec 10 16:14:46 2006 New Revision: 485321 URL: http://svn.apache.org/viewvc?view=revrev=485321 Log: GERONIMO-2607 Added returnType to GOperationInfo, This modifies GBeanInfoBuilder and breaks backward compatibility Modified: geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/DynamicGOperationInfo.java geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/GBeanInfoBuilder.java geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/GOperationInfo.java geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/runtime/GBeanOperation.java geronimo/server/trunk/modules/geronimo-kernel/src/test/java/org/ apache/geronimo/gbean/GBeanInfoTest.java geronimo/server/trunk/modules/geronimo-kernel/src/test/java/org/ apache/geronimo/kernel/MockGBean.java geronimo/server/trunk/modules/geronimo-kernel/src/test/java/org/ apache/geronimo/kernel/config/MyGBean.java geronimo/server/trunk/modules/geronimo-system/src/main/java/org/ apache/geronimo/system/jmx/JMXUtil.java geronimo/server/trunk/modules/geronimo-system/src/main/java/org/ apache/geronimo/system/logging/log4j/Log4jService.java Modified: geronimo/server/trunk/modules/geronimo-kernel/src/main/ java/org/apache/geronimo/gbean/DynamicGOperationInfo.java URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/ geronimo-kernel/src/main/java/org/apache/geronimo/gbean/ DynamicGOperationInfo.java?view=diffrev=485321r1=485320r2=485321 == --- geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/DynamicGOperationInfo.java (original) +++ geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/DynamicGOperationInfo.java Sun Dec 10 16:14:46 2006 @@ -24,14 +24,14 @@ */ public class DynamicGOperationInfo extends GOperationInfo { public DynamicGOperationInfo(String name) { -super(name); +super(name, java.lang.Object); } public DynamicGOperationInfo(String name, String[] paramTypes) { -super(name, paramTypes); +super(name, paramTypes, java.lang.Object); } public DynamicGOperationInfo(String name, List parameters) { -super(name, parameters); +super(name, parameters, java.lang.Object); } } Modified: geronimo/server/trunk/modules/geronimo-kernel/src/main/ java/org/apache/geronimo/gbean/GBeanInfoBuilder.java URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/ geronimo-kernel/src/main/java/org/apache/geronimo/gbean/ GBeanInfoBuilder.java?view=diffrev=485321r1=485320r2=485321 == ---
Re: svn commit: r485321 - in /geronimo/server/trunk/modules: geronimo-kernel/src/main/java/org/apache/geronimo/gbean/ geronimo-kernel/src/main/java/org/apache/geronimo/gbean/runtime/ geronimo-kernel/s
On Dec 11, 2006, at 7:18 AM, anita kulshreshtha wrote: When we add inteface using addInterface(..), we can end up with two methods like this. You can't have a class that implements both interfaces if they have methods whose signature differs only in the return type. If there are problems with trying to expose management interfaces that are not actually implemented by the underlying bean maybe we should look for other ways of dealing with the management aspects. Are there actual problems with existing gbeans extracting the return type for operations? If so, please indicate which gbean and which operation I don't want to get lost in too much abstraction as I so often do :-) I very much share Gianni's concerns and was about to write a similar note. thanks david jencks This is not a very good example because the objectName will end up as an attribute in GBeanInfoBuilder, not an operation. thanks Anita --- Vamsavardhana Reddy [EMAIL PROTECTED] wrote: It is not allowed to have public Object getObjectName() and public String getObjectName() simultaneously. --vamsi On 12/11/06, anita kulshreshtha [EMAIL PROTECTED] wrote: Gianny, Thanks for looking into this. I did consider the easy way out. But the retrun type is part of the method signature. What happens if we have public class Myclass { public Object getObjectName() public String getObjectName() .. } If JMXUtil was patched which one should it return? Thanks Anita --- Gianny Damour [EMAIL PROTECTED] wrote: Hi, I am quickly scanning this commit and I would like to know if it was not a little bit less intrusive to keep the existing addOperation and search for the return type of the added operations against the target gbeanType. This way, developers do not need to specify the return type of the operations (also, the migration of the existing GBeanInfo could have been avoided). After reading GERONIMO-2607, it seems that the goal of the change was to have a return type defined within JConsole for the GBean operations. It seems that patching JMXUtil.toMBeanInfo would have been another implementation approach: while getting the exposed operations, the GBean class could be searched for returned types. One of the advantages would have been to keep backward compatibility. Thanks, Gianny On 11/12/2006, at 11:14 AM, [EMAIL PROTECTED] wrote: Author: akulshreshtha Date: Sun Dec 10 16:14:46 2006 New Revision: 485321 URL: http://svn.apache.org/viewvc?view=revrev=485321 Log: GERONIMO-2607 Added returnType to GOperationInfo, This modifies GBeanInfoBuilder and breaks backward compatibility Modified: geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/DynamicGOperationInfo.java geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/GBeanInfoBuilder.java geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/GOperationInfo.java geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/runtime/GBeanOperation.java geronimo/server/trunk/modules/geronimo-kernel/src/test/java/org/ apache/geronimo/gbean/GBeanInfoTest.java geronimo/server/trunk/modules/geronimo-kernel/src/test/java/org/ apache/geronimo/kernel/MockGBean.java geronimo/server/trunk/modules/geronimo-kernel/src/test/java/org/ apache/geronimo/kernel/config/MyGBean.java geronimo/server/trunk/modules/geronimo-system/src/main/java/org/ apache/geronimo/system/jmx/JMXUtil.java geronimo/server/trunk/modules/geronimo-system/src/main/java/org/ apache/geronimo/system/logging/log4j/Log4jService.java Modified: geronimo/server/trunk/modules/geronimo-kernel/src/main/ java/org/apache/geronimo/gbean/DynamicGOperationInfo.java URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/ geronimo-kernel/src/main/java/org/apache/geronimo/gbean/ DynamicGOperationInfo.java?view=diffrev=485321r1=485320r2=485321 == --- geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/DynamicGOperationInfo.java (original) +++ geronimo/server/trunk/modules/geronimo-kernel/src/main/java/org/ apache/geronimo/gbean/DynamicGOperationInfo.java Sun Dec 10 16:14:46 2006 @@ -24,14 +24,14 @@ */ public class DynamicGOperationInfo extends GOperationInfo { public DynamicGOperationInfo(String name) { -super(name); +super(name, java.lang.Object); } public DynamicGOperationInfo(String name, String[] paramTypes) { -super(name, paramTypes); +super(name, paramTypes, java.lang.Object); } public DynamicGOperationInfo(String name, List parameters) { -super(name, parameters); +super(name, parameters, java.lang.Object); } } Modified: geronimo/server/trunk/modules/geronimo-kernel/src/main/
Re: svn commit: r485321 - in /geronimo/server/trunk/modules: geronimo-kernel/src/main/java/org/apache/geronimo/gbean/ geronimo-kernel/src/main/java/org/apache/geronimo/gbean/runtime/ geronimo-kernel/s
On Dec 11, 2006, at 5:38 AM, anita kulshreshtha wrote: Gianny, Thanks for looking into this. I did consider the easy way out. But the retrun type is part of the method signature. What happens if we have public class Myclass { public Object getObjectName() public String getObjectName() .. } If JMXUtil was patched which one should it return? The return type actually isn't part of the signature and the code above won't compile. A Java method is uniquely identified by class, method name and parameters. Once you have those three, you can always determine the return type. -dain