Java Management Extensions by J. Steven Perry This errata page lists errors outstanding in the most recent printing. If you have technical questions or error reports, you can send them to booktech@oreilly.com. Please specify the printing date of your copy. This page was updated August 17, 2004. Here's a key to the markup: [page-number]: serious technical mistake {page-number}: minor technical mistake : important language/formatting problem (page-number): language change or minor formatting problem ?page-number?: reader question or request for clarification Confirmed errors: {6} Example 1-2; public class GenericResource { //class details should be: public class GenericResource implements GenericResourceMBean { //class details {12} Figure 1.5; Top row of Figure 1.5 should read: OpenMBeanParameterInfo \ OpenMBeanParameterInfoSupport \ MBeanParameterInfo AUTHOR: The reader is correct. Figure 1-5 is wrong. The figure mistakenly depicts "OpenMBeanParameterInfoSupport implements OpenMBeanInfo and extends OpenMBeanInfo". The figure should depict "OpenMBeanParameterInfoSupport implements OpenMBeanParameterInfo and extends MBeanParameterInfo". Figure 5-1 is also incorrect. It mistakenly depicts "OpenMBeanParameterInfoSupport implements OpenMBeanParameterInfo and extends OpenMBeanInfo". {23} last paragraph For each type of MBean, there is a Windows batch file and a Unix (Korn shell) script that builds and runs the code for that instrumentation strategy. The name of the script or batch file matches the instrumentation strategy: for example, the build script for dynamic MBeans is called dynamic.sh, and the batch file for building the source code for the version of the application instrumented as dynamic MBeans is called dynamic.bat. The major differences between the application versions are in the source code. The console output and the management view will show very little difference (other than output from the Ant build script) between the versions of the application. Should be: For each type of MBean, there is a Windows batch file that builds and runs the code. The name of the batch file matches the instrumentation strategy: the batch file for building the source code for the version of the application instrumented as dynamic MBeans is called dynamic.bat. The major differences between the application versions are in the source code. The console output and the management view will show very little difference (other than output from the Ant build script) between the versions of the application. {24} 2nd to last line; should be: {77} 4th paragrah, starts with "Five essential properties"; The description of the name property for the MBeanOperationInfo class starts with "The name of the constructor" while it should start with "The name of the operation". The same applies in general for the description and signature properties as well. [188] code below last paragraph; Object qmbean = null; try { Object mbean = mbeanServer.instantiate(qmbeanClassName); } catch {ReflectionException e) { //... } catch (MBeanException e) { //... } should be: Object qmbean = null; try { mbean = mbeanServer.instantiate(qmbeanClassName); } catch {ReflectionException e) { //... } catch (MBeanException e) { //... }