Friday Nov 17, 2006

Securing the out-of-the-box management agent with an SSL/TLS-based RMI Registry

The aim of this post is to comment and shed some light on the security warning message that appears in the J2SE 5.0 Monitoring and Management Guide concerning the use of an insecure RMI registry by the out-of-the-box management agent.

[Read More]

Monday Sep 25, 2006

Authentication and Authorization in JMX RMI connectors

The aim of this blog entry is to explain to you all the possible ways of configuring the JMX RMI connectors to perform authentication and authorization by walking through the following use cases.

[Read More]

Wednesday Jul 05, 2006

Monitoring and Managing JMX Instrumented Java Web Start Applications with JConsole

In a previous blog entry I wrote about Monitoring and Managing JMX Instrumented Applets with JConsole. In this new blog entry I would like to show the same thing but for Java Web Start applications instead of Java applets.

I will show here how Java Web Start applications can be instrumented using JMX, launched from a web browser by clicking on a link and monitored and managed using Mustang JConsole.

[Read More]

Tuesday Jul 04, 2006

Monitoring and Managing JMX Instrumented Applets with JConsole

In this blog entry I would like to show how Java applets can be instrumented using JMX, run in a web browser with the Mustang Java Plug-in and monitored and managed using Mustang JConsole.

[Read More]

Wednesday Jun 28, 2006

Changes to the MBeans tab look and feel in Mustang JConsole

Moving the nested tabs for Attributes/Operations/Notifications/Info from the MBean's right panel to the MBean tree in the left panel has implied modifications to the MBeans tab look and feel.

Let's introduce the new Mustang JConsole features by comparison with the Tiger JConsole MBeans tab look and feel.

[Read More]

Friday Jun 23, 2006

Using the SSL/TLS-based RMI Socket Factories in Java SE 6 with the JNDI/RMI Registry Service Provider

This is a followup of my previous blog entry Using the SSL/TLS-based RMI Socket Factories in J2SE 5.0.

In this new entry I will update the example to show you how SSL/TLS-based connections to the RMI registry are now supported in Mustang (Java SE 6) when using the JNDI/RMI Registry Service Provider.

[Read More]

Wednesday Jun 14, 2006

JConsole's MBeans tab: MBean tree construction

Do you want to know how the MBean tree is constructed in the JConsole's MBeans tab in Mustang (Java SE 6)?

If the answer is yes, keep reading!

I will explain how the MBean tree is constructed by default and how you can specify the key order the MBean tree construction algorithm must follow when adding MBeans (ObjectNames) to the MBean tree.

[Read More]

Friday Jun 02, 2006

Mimicking the out-of-the-box JMX management agent in J2SE 5.0

Starting with J2SE 5.0, the JVM is instrumented for monitoring and management providing built-in ("out-of-the-box") management capabilities for both remote and local access. The JVM includes a platform MBean server and platform MBeans that JMX management applications can use. You can also instrument and monitor your own applications by adding your application specific MBeans to the platform MBean server.

By default, remote access to the out-of-the-box management agent is protected by authentication (password files), authorization (access files) and SSL/TLS encryption. All the out-of-the-box management agent configuration is performed through system properties and/or through a file (located under JRE_HOME/lib/management/ For more detailed info about the Monitoring and Management APIs in the Java platform have a look at the Monitoring and Management Guide.

In most of the cases using the out-of-the-box management agent and configuring it through the file is enough but there are some cases such as when exporting the RMI server remote objects in a given port to allow firewall traversing, or exporting the RMI server remote objects using a specific network interface in multi-homed systems, etc, where it may not be enough. For such cases we can mimic the behavior of the out-of-the-box management agent by directly using the JMX Remote API to programmatically create, configure and deploy the management agent.

[Read More]

Wednesday May 31, 2006

Using the SSL/TLS-based RMI Socket Factories in J2SE 5.0

Since J2SE 5.0 client and server SSL/TLS-based RMI Socket Factories are part of the Java platform. The newly defined java package javax.rmi.ssl defines two new classes:

These two new classes allow to export SSL/TLS-protected remote objects and RMI registries in a standard and portable way. You can specify the cipher suites and protocols to be enabled and if client authentication is required by the server. You don't need anymore to implement and deploy your custom SSL/TLS-based RMI Socket Factories thus avoiding the hassle of having to add to your client classpath your custom factories.

[Read More]

Friday Apr 07, 2006

Monitoring complex attributes with the JMX Monitor API

Eamonn McManus, the JMX spec lead, has already blogged about the two biggest changes to the JMX API in Mustang: MXBeans and Descriptors.

I would like to talk now about a minor improvement that has been made to the JMX Monitor API in Mustang that allows to monitor simple numerical types or string types buried inside complex types in an MBean attribute.

[Read More]

Thursday Mar 23, 2006

Java Expo '06 @ Sun Tech Days Madrid

I´m just back from the Sun Tech Days in Madrid (Spain). It´s been a great event, 1500+ attendees and very interesting technical talks around Java, NetBeans, Solaris and the latest and greatest web technologies (AJAX, SOA, ...). It´s been a real pleasure taking part in this event and see "live" the tremendous work Sun Technology Evangelists carry out and the dedication they put in evangelising Sun products and technologies through a series of technical talks, code camps and hands-on labs.

I also had the pleasure to personally meet Sun Distinguished Engineer Eduardo Pelegrí Llopart and attend his keynote around Java EE 5, GlassFish and the important role the developer community plays in it. Cool stuff! Keep the great work and you developers don´t forget to check The Aquarium on a daily basis.

Finally, I will say a few words about my JMX talk. I did present JMX and how it will evolve in Java SE 6 (Mustang) and Java SE 7 (Dolphin) and did demo the JMX NetBeans plugin and JConsole. Attendees were delighted by the JConsole tool and how easy it is to monitor and manage running Java apps with it. Got a bunch of interesting questions:

  • Interest on the web services connector (JSR 262) and JAX-WS 2.0. Developers liked the idea of being able to deploy web services in the Java SE platform through the Mustang´s embedded HTTP server without having to embed themselves a third-party web container.
  • Interest on discovery. How JMX agents can be discovered by generic JMX management consoles? I talked about the Lookup Services bindings defined in the JMX specification but maybe need to think again about a unified service provider based high-level Discovery API for JMX.
  • Interest on mib2mbean (aka mibgen) and I would add mof2mbean too. Should we open source these tools? In my opinion these two are good candidates for evolution as two new projects.
  • Of course, we should not forget that JMX is still being used by products running on JDK 1.4.x and should continue to support the unbundled versions of the JMX and JMX Remote APIs for a while.
  • Interest on JConsole´s tab extensibility. From Mustang b81 onwards developers will be able to reuse JConsole´s infrastructure and plug in their own custom tabs through the new JConsole Service API (aka as JConsole Plugin API).

The first blog entry in my life

Finally I decided to jump in into the fascinating world of bloggers. I´m Luis Miguel Alventosa, an Alicante (Spain) native who works at Sun in Grenoble (France). I´m a member of the JMX development team in the Java SE organization and will be blogging about Java, JMX, M&M, RMI, security, etc.




« July 2016