Java Dynamic Management Kit 4.1 Installation Guide and Release Notes

Release and Version Issues

JMX Specification Compatibility

The Java Dynamic Management Kit version 4.1 is compatible with the Java Management Extensions Instrumentation and Agent Specifications, v1.0, Public Release 2 (December 1999). This is the current release of the JMX specification at the time the Java Dynamic Management Kit is shipping (April 2000).

The corresponding document can be viewed on-line once the documentation package has been installed (see "Overview of the Product Documentation").


Note -

For historic reasons, the previous version of the JMX specification was identified as "Draft 2.0, First Public Release (August 1999)."


Java Version Compatibility

The Java Dynamic Management Kit version 4.1 is officially supported for development platforms under the following configurations:

Deployment platform configurations are unsupported. However, the Java Dynamic Management Kit components are 100% Java code and should run with minimal modifications on environments with compliant Java Runtime Environment for Java 2, v1.2.2 or JDK 1.1.8. Many other configurations have been tested and are known to work reliably.

Backwards Compatibility

Due to major architectural changes, including the JMX compatibility, there is no backwards compatibility between version 4.1 of the Java Dynamic Management Kit and previous releases (3.2, 3.0, 2.0). Code developed for versions 3.2, 3.0, and 2.0 will most likely need to be ported in order to take advantage of the new architecture. Agents and managers developed with different versions of the product are definitely incompatible at the communications level.

Versions 4.1 and 4.0 of the Java Dynamic Management Kit are fully code-compatible: applications developed with version 4.0 will compile without modification when using version 4.1 of the packages. However, due to serialization issues, agent and manager applications of heterogeneous 4.x versions cannot communicate. This is easily solved by recompiling the 4.0 applications using the 4.1 packages.

One notable exception to version incompatibility at the communication level is the SNMP interoperability. Due to the relatively stable protocol definition, SNMP can be used to connect different versions of the Java Dynamic Management Kit, to the extent that the protocol was implemented by those versions. Agents or managers must continue to run their original version of the product, but they may communicate through SNMP with entities relying on a different version.

Files generated by the mibgen tool of the 4.1 release are compatible with those generated by the 4.0 version with one exception. The metadata classes generated for a MIB and used by the SNMP adaptor need to be regenerated. The other classes generated to represent the whole MIB and a skeleton implementation of each MIB group are unchanged, and they can be safely replaced by your previously customized implementations.

Cross-Java Compatibility

You must run all communicating agents and managers with the same major version of the Java Runtime Environment, either all using JDK 1.1 or all using Java 2. The behavior of a manager running Java 2 and communicating with an agent running the JDK 1.1, or vice-versa, is undefined. Data integrity and behavioral integrity are only possible when both agent and manager run the same version of the Java environment.

Again, SNMP interoperability has the advantage over other protocols of being independent of the Java environment version. The SNMP protocol adaptor can, regardless of its Java version, receive and decode requests from any SNMP manager. And a manager implemented with the SNMP manager API can send requests to any agent, without needing to know about its version compatibility.

Cross-Platform Compatibility

When product version compatibility and Java version compatibility are respected, the Java Dynamic Management Kit offers full management compatibility across heterogeneous platforms. For example, a manager running on a SPARC server could manage a whole deployment of Windows NT PCs, controlling their availability and upgrading their Java-technology based software when needed.