From Alan.Bateman at Sun.COM Mon Nov 23 02:04:26 2009 From: Alan.Bateman at Sun.COM (Alan Bateman) Date: Mon, 23 Nov 2009 10:04:26 +0000 Subject: jmx-dev Need reviewer for 6888171: JMX Monitor API should not require JavaBeans to be present Message-ID: <4B0A5E2A.8060904@sun.com> The JMX Monitor API is specified to use the Java Beans introspector for complex types others than CompositeData or arrays. This dependency is undesirable because JavaBeans is very tied to AWT. I'd like to address this dependency. The main observation is that if explicit information is available (ie: XXXBeanInfo exists) then the application's dependency will require Java Beans to be present. In that case, the Java Beans introspector should be used and everywhere works as it does now. On the other hand, if explicit information is not available, then the introspector uses reflection to identity the property accessors. That case should not require the module containing Java Beans to be installed and if not installed, we can use a fallback mechanism to identity the property methods. I had a short call with ?amonn about this and he agreed that this approach is okay (and made useful suggestions to avoid duplicating some of the existing JMX introspection code). I've put the webrev the proposed changes here: http://cr.openjdk.java.net/~alanb/6888171/webrev.00 Thanks, Alan. From Eamonn.McManus at Sun.COM Mon Nov 23 05:31:53 2009 From: Eamonn.McManus at Sun.COM (Eamonn McManus) Date: Mon, 23 Nov 2009 14:31:53 +0100 Subject: jmx-dev Need reviewer for 6888171: JMX Monitor API should not require JavaBeans to be present In-Reply-To: <4B0A5E2A.8060904@sun.com> References: <4B0A5E2A.8060904@sun.com> Message-ID: <4B0A8EC9.7030304@sun.com> Looks OK to me. There's a typo "upperacse" in Introspector but that's all I noticed. ?amonn McManus ? JMX Spec Lead ? http://weblogs.java.net/blog/emcmanus Alan Bateman wrote: > > The JMX Monitor API is specified to use the Java Beans introspector for > complex types others than CompositeData or arrays. This dependency is > undesirable because JavaBeans is very tied to AWT. I'd like to address > this dependency. The main observation is that if explicit information is > available (ie: XXXBeanInfo exists) then the application's dependency > will require Java Beans to be present. In that case, the Java Beans > introspector should be used and everywhere works as it does now. On the > other hand, if explicit information is not available, then the > introspector uses reflection to identity the property accessors. That > case should not require the module containing Java Beans to be installed > and if not installed, we can use a fallback mechanism to identity the > property methods. I had a short call with ?amonn about this and he > agreed that this approach is okay (and made useful suggestions to avoid > duplicating some of the existing JMX introspection code). I've put the > webrev the proposed changes here: > http://cr.openjdk.java.net/~alanb/6888171/webrev.00 > > Thanks, > Alan.