mx4j/src/docs/english jmx-explained.xml,1.7,1.8

Simone Bordet <[email protected]>
Newsgroups gmane.comp.java.mx4j.cvs
Message-ID <[email protected]>
Update of /cvsroot/mx4j/mx4j/src/docs/english
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv4104/src/docs/english

Modified Files:
	jmx-explained.xml 
Log Message:
Fixed typo. Resolves bug #968203

Index: jmx-explained.xml
===================================================================
RCS file: /cvsroot/mx4j/mx4j/src/docs/english/jmx-explained.xml,v
retrieving revision 1.7
retrieving revision 1.8
diff -C2 -d -r1.7 -r1.8
*** jmx-explained.xml	4 Nov 2003 00:29:38 -0000	1.7
--- jmx-explained.xml	12 Jun 2004 21:24:31 -0000	1.8
***************
*** 9,13 ****
        <para>
           JMX 1.2 introduced four overloaded static version of the
!          <classname>getInstance()</classname> method: <sbr/>
           <sbr/>
           <funcdef>
--- 9,14 ----
        <para>
           JMX 1.2 introduced four overloaded static version of the
!          <classname>getInstance()</classname> method:
!          <sbr/>
           <sbr/>
           <funcdef>
***************
*** 54,58 ****
     <section>
        <title>The
!          <classname>quote()</classname> and <classname>unquote()</classname> methods
        </title>
        <para>
--- 55,60 ----
     <section>
        <title>The
!          <classname>quote()</classname> and
!          <classname>unquote()</classname> methods
        </title>
        <para>
***************
*** 61,65 ****
        </para>
        <para>
!          A simple example of this feature is to specify an LDAP name as an ObjectName property value. <sbr/>
           Since the comma is a reserved character that separates ObjectName properties, it would have been
           impossible to specify an LDAP name as an ObjectName property.
--- 63,68 ----
        </para>
        <para>
!          A simple example of this feature is to specify an LDAP name as an ObjectName property value.
!          <sbr/>
           Since the comma is a reserved character that separates ObjectName properties, it would have been
           impossible to specify an LDAP name as an ObjectName property.
***************
*** 67,71 ****
        <para>
           Let's suppose to have a distinguished name of 'uid=guest,ou=project,o=company', and to build an
!          ObjectName with a property called 'dname' whose value is the distinguished name. <sbr/>
           Without quoting, the ObjectName is:
        </para>
--- 70,75 ----
        <para>
           Let's suppose to have a distinguished name of 'uid=guest,ou=project,o=company', and to build an
!          ObjectName with a property called 'dname' whose value is the distinguished name.
!          <sbr/>
           Without quoting, the ObjectName is:
        </para>
***************
*** 86,90 ****
        <para>
           The ObjectName class has no knowledge if a value should be quoted or not, so it is responsibility
!          of the developer to quote and unquote property values. <sbr/>
           It is a good practice to do so in those cases where the property value is chosen by users, for example
           by inputting it in a web form or in a swing gui.
--- 90,95 ----
        <para>
           The ObjectName class has no knowledge if a value should be quoted or not, so it is responsibility
!          of the developer to quote and unquote property values.
!          <sbr/>
           It is a good practice to do so in those cases where the property value is chosen by users, for example
           by inputting it in a web form or in a swing gui.
***************
*** 98,107 ****
        <title>Overview</title>
        <para>
!          JMX 1.2 defined all changes to the JMX specification needed to support remote API. <sbr/>
           Imagine a situation where a client needs to contact a remote MBeanServer, to invoke operations on it and
!          to receive the result of such invocations. <sbr/>
           In order for this situation to be possible, the JMX specification needed several changes such as
           specifying the serialVersionUID of serializable classes that can be exchanged between the client and
!          the remote MBeanServer (for example <classname>javax.management.MBeanInfo</classname>), specifying
           details of MBeanServer's classloading to support classloading from remote locations, and the possibility
           for the client to invoke operations on an MBeanServer-like interface that supports remote invocation
--- 103,115 ----
        <title>Overview</title>
        <para>
!          JMX 1.2 defined all changes to the JMX specification needed to support remote API.
!          <sbr/>
           Imagine a situation where a client needs to contact a remote MBeanServer, to invoke operations on it and
!          to receive the result of such invocations.
!          <sbr/>
           In order for this situation to be possible, the JMX specification needed several changes such as
           specifying the serialVersionUID of serializable classes that can be exchanged between the client and
!          the remote MBeanServer (for example
!          <classname>javax.management.MBeanInfo</classname>), specifying
           details of MBeanServer's classloading to support classloading from remote locations, and the possibility
           for the client to invoke operations on an MBeanServer-like interface that supports remote invocation
***************
*** 123,129 ****
        </para>
        <para>
!          The <classname>javax.management.MBeanServerConnection</classname> interface has been defined as the
           portion of the MBeanServer interface that can be used by client to contact a remote MBeanServer, and
!          is MBeanServer's parent interface. <sbr/>
        </para>
     </section>
--- 131,139 ----
        </para>
        <para>
!          The
!          <classname>javax.management.MBeanServerConnection</classname> interface has been defined as the
           portion of the MBeanServer interface that can be used by client to contact a remote MBeanServer, and
!          is MBeanServer's parent interface.
!          <sbr/>
        </para>
     </section>
***************
*** 174,178 ****
              <programlisting>
                 <![CDATA[
! java -cp jmxri.jar;mx4j-impl.jar -Djava.management.builder.initial=mx4j.server.MX4JMBeanServerBuilder <MyClass>
                 ]]>
              </programlisting>
--- 184,188 ----
              <programlisting>
                 <![CDATA[
! java -cp jmxri.jar;mx4j-impl.jar -Djavax.management.builder.initial=mx4j.server.MX4JMBeanServerBuilder <MyClass>
                 ]]>
              </programlisting>
***************
*** 466,470 ****
        <para>
           MX4J version 1.x provided a custom implementation of a JDK 1.3's dynamic proxy to ease invocation
!          of methods on a MBean via the MBeanServer, the <classname>mx4j.util.StandardMBeanProxy</classname> class.
           <sbr/>
           MX4J 1.x provided also a class for invocation of methods on remote MBeans, namely
--- 476,481 ----
        <para>
           MX4J version 1.x provided a custom implementation of a JDK 1.3's dynamic proxy to ease invocation
!          of methods on a MBean via the MBeanServer, the
!          <classname>mx4j.util.StandardMBeanProxy</classname> class.
           <sbr/>
           MX4J 1.x provided also a class for invocation of methods on remote MBeans, namely
***************
*** 476,481 ****
        </para>
        <para>
!          In JMX 1.2, the <classname>javax.management.MBeanServer</classname> interface inherits from the
!          <classname>javax.management.MBeanServerConnection</classname> interface. <sbr/>
           The MBeanServerConnection interface has basically the same methods of MBeanServer except those that
           does not have sense remotely (like deserialize() and registerMBean()), and adds
--- 487,494 ----
        </para>
        <para>
!          In JMX 1.2, the
!          <classname>javax.management.MBeanServer</classname> interface inherits from the
!          <classname>javax.management.MBeanServerConnection</classname> interface.
!          <sbr/>
           The MBeanServerConnection interface has basically the same methods of MBeanServer except those that
           does not have sense remotely (like deserialize() and registerMBean()), and adds
***************
*** 484,492 ****
        </para>
        <para>
!          As of JMX 1.2, both <classname>mx4j.util.StandardMBeanProxy</classname> and
           <classname>mx4j.connector.RemoteStandardMBeanProxy</classname> are obsolete since they have been
           replaced by one single class, the standard
           <classname>javax.management.MBeanServerInvocationHandler</classname> class, that takes advantage of
!          the improved class hierarchy of the <classname>javax.management.MBeanServer</classname> interface
           to unify the functionalities that were provided before by the two MX4J classes.
        </para>
--- 497,507 ----
        </para>
        <para>
!          As of JMX 1.2, both
!          <classname>mx4j.util.StandardMBeanProxy</classname> and
           <classname>mx4j.connector.RemoteStandardMBeanProxy</classname> are obsolete since they have been
           replaced by one single class, the standard
           <classname>javax.management.MBeanServerInvocationHandler</classname> class, that takes advantage of
!          the improved class hierarchy of the
!          <classname>javax.management.MBeanServer</classname> interface
           to unify the functionalities that were provided before by the two MX4J classes.
        </para>
***************
*** 499,515 ****
        <para>
           The JMX API to call an MBean via MBeanServer is very tedious: involves a reflection-like syntax and
!          a complex exception handling. <sbr/>
           The reflection-like syntax is sometimes an advantage, but it suffers of lack of static type checkings
!          made by the compiler. <sbr/>
           The exception handling is complex since it involves unwrapping of
           <classname>javax.management.MBeanException</classname>s and rethrowing of the original exception thrown
!          by the MBean method, very much like <classname>java.lang.reflect.InvocationTargetException</classname>
           requires.
        </para>
        <para>
!          Fortunately, JDK 1.3 provides <emphasis>dynamic proxies</emphasis> via the
!          <classname>java.lang.reflect.Proxy</classname> class. <sbr/>
           By means of dynamic proxies, is it possible to write a proxy that hides the complexity of JMX
!          invocations and provides static type checking and trasparent exception handling. <sbr/>
           Compare the two code examples below and note how the second example is cleaner.
        </para>
--- 514,536 ----
        <para>
           The JMX API to call an MBean via MBeanServer is very tedious: involves a reflection-like syntax and
!          a complex exception handling.
!          <sbr/>
           The reflection-like syntax is sometimes an advantage, but it suffers of lack of static type checkings
!          made by the compiler.
!          <sbr/>
           The exception handling is complex since it involves unwrapping of
           <classname>javax.management.MBeanException</classname>s and rethrowing of the original exception thrown
!          by the MBean method, very much like
!          <classname>java.lang.reflect.InvocationTargetException</classname>
           requires.
        </para>
        <para>
!          Fortunately, JDK 1.3 provides
!          <emphasis>dynamic proxies</emphasis> via the
!          <classname>java.lang.reflect.Proxy</classname> class.
!          <sbr/>
           By means of dynamic proxies, is it possible to write a proxy that hides the complexity of JMX
!          invocations and provides static type checking and trasparent exception handling.
!          <sbr/>
           Compare the two code examples below and note how the second example is cleaner.
        </para>
***************
*** 570,574 ****
        </para>
        <para>
!          Usage of the <classname>javax.management.MBeanServerInvocationHandler</classname> class is straightforward
           for standard MBeans, since they already comply a management interface that is also a Java interface.
           This interface can be used directly
--- 591,596 ----
        </para>
        <para>
!          Usage of the
!          <classname>javax.management.MBeanServerInvocationHandler</classname> class is straightforward
           for standard MBeans, since they already comply a management interface that is also a Java interface.
           This interface can be used directly
***************
*** 613,627 ****
        </para>
        <para>
!          Refer to the javadocs of the <classname>javax.management.MBeanServerInvocationHandler</classname> class
           for further details.
        </para>
     </section>
     <section>
!       <title>Porting examples for <classname>mx4j.util.StandardMBeanProxy</classname></title>
        <para>
!          The MX4J 1.x API of <classname>mx4j.util.StandardMBeanProxy</classname> is very similar to
           <classname>javax.management.MBeanServerInvocationHandler</classname>'s.
           <sbr/>
!          Below are shown two code snippets that compare the old MX4J 1.x API with the new standard one. <sbr/>
           Note how only the line marked with (*) changes from the old version to the new one.
        </para>
--- 635,654 ----
        </para>
        <para>
!          Refer to the javadocs of the
!          <classname>javax.management.MBeanServerInvocationHandler</classname> class
           for further details.
        </para>
     </section>
     <section>
!       <title>Porting examples for
!          <classname>mx4j.util.StandardMBeanProxy</classname>
!       </title>
        <para>
!          The MX4J 1.x API of
!          <classname>mx4j.util.StandardMBeanProxy</classname> is very similar to
           <classname>javax.management.MBeanServerInvocationHandler</classname>'s.
           <sbr/>
!          Below are shown two code snippets that compare the old MX4J 1.x API with the new standard one.
!          <sbr/>
           Note how only the line marked with (*) changes from the old version to the new one.
        </para>



-------------------------------------------------------
This SF.Net email is sponsored by the new InstallShield X.
From Windows to Linux, servers to mobile, InstallShield X is the
one installation-authoring solution that does it all. Learn more and
evaluate today! http://www.installshield.com/Dev2Dev/0504
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.